<SEC-DOCUMENT>0000924168-21-000029.txt : 20210513
<SEC-HEADER>0000924168-21-000029.hdr.sgml : 20210513
<ACCEPTANCE-DATETIME>20210513083920
ACCESSION NUMBER:		0000924168-21-000029
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		81
CONFORMED PERIOD OF REPORT:	20210331
FILED AS OF DATE:		20210513
DATE AS OF CHANGE:		20210513

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			ENERGY FOCUS, INC/DE
		CENTRAL INDEX KEY:			0000924168
		STANDARD INDUSTRIAL CLASSIFICATION:	ELECTRIC LIGHTING & WIRING EQUIPMENT [3640]
		IRS NUMBER:				943021850
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-Q
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-36583
		FILM NUMBER:		21917376

	BUSINESS ADDRESS:	
		STREET 1:		32000 AURORA ROAD
		STREET 2:		SUITE B
		CITY:			SOLON
		STATE:			OH
		ZIP:			44139
		BUSINESS PHONE:		4407151300

	MAIL ADDRESS:	
		STREET 1:		32000 AURORA ROAD
		STREET 2:		SUITE B
		CITY:			SOLON
		STATE:			OH
		ZIP:			44139

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	FIBERSTARS INC /CA/
		DATE OF NAME CHANGE:	19940527
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>efoi-20210331.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version="1.0" ?><!--XBRL Document Created with Wdesk from Workiva--><!--Copyright 2021 Workiva--><!--r:e2a4800e-2bee-4a0f-9ce7-c0f26b88321d,g:b231b6ec-e457-4087-8af0-4631d4401d22,d:a1987147ec8946e7a79d46893e4b989b--><html xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:dei="http://xbrl.sec.gov/dei/2020-01-31" xmlns="http://www.w3.org/1999/xhtml" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:srt="http://fasb.org/srt/2020-01-31" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:us-gaap="http://fasb.org/us-gaap/2020-01-31" xmlns:efoi="http://www.energyfocusinc.com/20210331" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>efoi-20210331</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:EntityCentralIndexKey" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80L2ZyYWc6NzY0ZjgzMmIzMDNkNDk3M2FkZmU4ZWEzMTRiY2Q2MjEvdGFibGU6NGY2ZmMxMzQ4NWVhNDI3ZGE4YjcwMTJjMDA5YmU5MTUvdGFibGVyYW5nZTo0ZjZmYzEzNDg1ZWE0MjdkYThiNzAxMmMwMDliZTkxNV80LTEtMS0xLTA_8c758c00-08eb-443a-a7cc-2d74434aa8c3">0000924168</ix:nonNumeric><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt:datemonthday" name="dei:CurrentFiscalYearEndDate" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80L2ZyYWc6NzY0ZjgzMmIzMDNkNDk3M2FkZmU4ZWEzMTRiY2Q2MjEvdGFibGU6NGY2ZmMxMzQ4NWVhNDI3ZGE4YjcwMTJjMDA5YmU5MTUvdGFibGVyYW5nZTo0ZjZmYzEzNDg1ZWE0MjdkYThiNzAxMmMwMDliZTkxNV81LTEtMS0xLTA_83b00b57-eeb3-4cb7-8050-c077909b0470">12/31</ix:nonNumeric><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:DocumentFiscalYearFocus" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80L2ZyYWc6NzY0ZjgzMmIzMDNkNDk3M2FkZmU4ZWEzMTRiY2Q2MjEvdGFibGU6NGY2ZmMxMzQ4NWVhNDI3ZGE4YjcwMTJjMDA5YmU5MTUvdGFibGVyYW5nZTo0ZjZmYzEzNDg1ZWE0MjdkYThiNzAxMmMwMDliZTkxNV8xMy0xLTEtMS0w_457d5f4c-8e8c-40a9-a0b6-3fa7398205ad">2021</ix:nonNumeric><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:DocumentFiscalPeriodFocus" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80L2ZyYWc6NzY0ZjgzMmIzMDNkNDk3M2FkZmU4ZWEzMTRiY2Q2MjEvdGFibGU6NGY2ZmMxMzQ4NWVhNDI3ZGE4YjcwMTJjMDA5YmU5MTUvdGFibGVyYW5nZTo0ZjZmYzEzNDg1ZWE0MjdkYThiNzAxMmMwMDliZTkxNV8xNC0xLTEtMS0w_5e7b8837-38f1-4bf0-a56a-fe4778f8ed40">Q1</ix:nonNumeric><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt:booleanfalse" name="dei:AmendmentFlag" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80L2ZyYWc6NzY0ZjgzMmIzMDNkNDk3M2FkZmU4ZWEzMTRiY2Q2MjEvdGFibGU6NGY2ZmMxMzQ4NWVhNDI3ZGE4YjcwMTJjMDA5YmU5MTUvdGFibGVyYW5nZTo0ZjZmYzEzNDg1ZWE0MjdkYThiNzAxMmMwMDliZTkxNV8xNS0xLTEtMS0w_950d1bc1-c266-4e53-bcf4-27b43787be43">FALSE</ix:nonNumeric><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:EntityRegistrantName" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80L2ZyYWc6NzY0ZjgzMmIzMDNkNDk3M2FkZmU4ZWEzMTRiY2Q2MjEvdGV4dHJlZ2lvbjo3NjRmODMyYjMwM2Q0OTczYWRmZThlYTMxNGJjZDYyMV8zMg_48424470-882d-4cf1-9767-6494cadef2d6">ENERGY FOCUS, INC/DE</ix:nonNumeric><ix:nonFraction unitRef="number" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="INF" name="us-gaap:StockholdersEquityNoteStockSplitConversionRatio1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yMi9mcmFnOmRlYWVhNmQ2M2YxZjQ4MGY5NTAwNjAwMjEwYzgyOWM3L3RleHRyZWdpb246ZGVhZWE2ZDYzZjFmNDgwZjk1MDA2MDAyMTBjODI5YzdfMTQ_251d2f38-86ac-4a81-bda1-79be2ce9477d">0.2</ix:nonFraction><ix:nonFraction unitRef="number" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="INF" name="us-gaap:StockholdersEquityNoteStockSplitConversionRatio1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zMS9mcmFnOjIzYzFhNWViMDUzNzRiMDliNTgyYmFkMTM4YzhiM2VhL3RleHRyZWdpb246MjNjMWE1ZWIwNTM3NGIwOWI1ODJiYWQxMzhjOGIzZWFfMTQ_0ef3f280-0e6c-4885-99f6-0c40db948df0">0.2</ix:nonFraction><ix:nonFraction unitRef="number" contextRef="ib511811b464246dcb6dacfa99b4e73e8_D20200611-20200611" decimals="INF" name="us-gaap:StockholdersEquityNoteStockSplitConversionRatio1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80My9mcmFnOjFiNzJkYjg0NDRlZDRkYTI5NDY2NDE3MDcxNGY2MDc0L3RleHRyZWdpb246MWI3MmRiODQ0NGVkNGRhMjk0NjY0MTcwNzE0ZjYwNzRfMTk2_085d5ef0-6898-414c-b825-41770c27ef9a">0.2</ix:nonFraction><ix:nonNumeric contextRef="i2033bf56898b45b0a71f426377e0e078_D20160101-20160331" name="efoi:StandardProductWarrantyNumberofYears" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDA0OQ_e66bff4c-194e-44bc-a3ef-eb779268857d">P1Y</ix:nonNumeric><ix:nonFraction unitRef="number" contextRef="ib511811b464246dcb6dacfa99b4e73e8_D20200611-20200611" decimals="INF" name="us-gaap:StockholdersEquityNoteStockSplitConversionRatio1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83My9mcmFnOmJiYmI1NTYyNTllNjQ4MjU4NGMxN2Y4MjUyZGY4OGQxL3RleHRyZWdpb246YmJiYjU1NjI1OWU2NDgyNTg0YzE3ZjgyNTJkZjg4ZDFfMTAy_d79cfc09-01f4-40e3-b739-5d3328ce7e51">0.2</ix:nonFraction></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="efoi-20210331.xsd"></link:schemaRef></ix:references><ix:resources><xbrli:context id="i612079b69ed741e48b442b22207bd746_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:context id="ied75b1bf063b409c8c62ca90898cf369_I20210510"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-05-10</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="usd"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:context id="ia2ed7d6c1695406e89547655ae276683_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="usdPerShare"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit><xbrli:context id="iae645623f77e42e5b5e147a4d7803174_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8bba8aca45b447dca8a0fe6aadddcdd7_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:context id="iefa2f8c5d2494f84a4889f4269ec295c_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib0c30d855fb94190b54430d1d98b67d2_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifb09e59072d14268b8167df84d28bcbb_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic25ef8ed452643c192dc1b856cce88ce_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i935f80c4157c4844940f1b9e9b3bbc9b_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8311295ceced4887b52bb77f08688ba2_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9ef8836cce7e40659ce9d5656d0e1dc3_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i914b601634db4c02a91ffcca4c1681dd_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic30667e4d1c14c38b17e5e0c135745cc_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic6127dfec7cc4a26a5679368ae0f6331_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1feef45a88014e6f88c7c491aef496dd_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id717036fa6a84777abf568d01d8c77d7_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i65811a43f59446e092002acba8e94052_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i79484b12568d4589885611a2120d0f97_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if08ae7d128714b3e92be1b377916eb91_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id5f8d6f4d1b44677bcc8adf664cf853c_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6a96f27ca97a4544a2d8a3dc39035908_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic3460a1e7c5f44a09209f32a5366d644_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia14618e080534548a2781f9ad7ec8f84_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i81985727a69745758bddf991481d0505_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i67803bc7a01c456e80a6846be17ef60d_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ied33f6c53d764225aa6f8c145679b518_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9455098d06554ec0adf612293c2144a1_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0a8148c40d814bfd89d54a226595752e_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4214f4a61aea40e8bef111db565b878e_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7aebac5aec544ae3b2afb6da8016cdc9_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1c85bdd333f64a73bad6e2d47e396c8d_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i26e85c903f5047c7b6a506e3150f982a_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8b380c143505472ea52a1d6c64de8ec9_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i966f4d480fe049d7b6c17f4a72dc83da_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i63ccc98555614cfab54ffbdf8ae024fc_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2445ac12b79b4fe9ae5212c144262d44_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iff3ff954adda4095a804e4cfb5194d74_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1249020da8174efcb6c1b1321d81b702_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NewCreditFacilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia4a74a32957d4c4a85349e233b9e36d9_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NewCreditFacilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i66985daeedc64cd7ab86f489ac45819c_I20200611"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-06-11</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib511811b464246dcb6dacfa99b4e73e8_D20200611-20200611"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-06-11</xbrli:startDate><xbrli:endDate>2020-06-11</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4ac3ca3389b54e11881bc600bc76e5c1_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if5f69b88c1e94812b8d32051e6bf5bad_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheU.S.NavyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8fd89665f12e4c79be1f16a4975db0e9_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:RegionalCommercialLightingRetrofitCompanyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i016aca80ed34490fb5902c84d4cdb20c_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ide94a6dc06b94121b00d007ae8029a9c_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheU.S.NavyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i98413ba4172f400fb13a4e55b3dd9ece_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:RegionalCommercialLightingRetrofitCompanyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic0084796b5f94e29804958a4753bf87d_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9b8c850c315e4629b561719f49269baa_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheU.S.NavyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i404f93dec6d14c99986fb1a63ef2adaf_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:RegionalCommercialLightingRetrofitCompanyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i027584a13e074a8b955c05d56697a12d_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheU.S.NavyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i24390d1b839c498da16d408831cd0cdb_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:ShipbuilderForUSNavyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i31b6c2c6322246a4beda0a0731370684_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i339a38526a964beca9f1eb7f0d7d7f75_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i141e4c5e274f4baa94b6e62a525c3b7c_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsPayableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8d004affba704c7ca37fa06e3ba8892f_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsPayableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:DomesticSupplierMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie020b072c1514c4ea7ff082dae9ba76f_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsPayableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i18a690ed9a9a41458d0feffe21f8dcca_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:CommercialProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic4682245caf84f909e5aa693dcb86844_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:CommercialProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9610cf42043f41e5b8ebba87cec3b68e_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:MMMProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iea035adca85b40d38d1857cd4a7d3ddd_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:MMMProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i01bd9c8c1eaf40bc95a4831475c6065c_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if4463cd7b06c441198a42045a52ce68c_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i23f283c771fb442cbcbc4e3518a209e7_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i07e159ff53c64c0c9211a8bafd5d974c_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:WarrantMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id654613ac3e14a678d4ce7ce503bdd1c_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i26a92c18c3f5476183cd1d14b1c8017b_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8dce9257f3f24cc597b70575ad006ab1_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i156a82c4ce954d63bb4ce38aba1d7b32_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2033bf56898b45b0a71f426377e0e078_D20160101-20160331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2016-01-01</xbrli:startDate><xbrli:endDate>2016-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i254d386828124dd682d8335070f16083_D20160101-20160331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2016-01-01</xbrli:startDate><xbrli:endDate>2016-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia0662236cd9941438e3fb2c0b78a0713_D20160401-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2016-04-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i51e6dde065b142a79d23bc3955353ce9_D20160401-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:OtherLEDProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2016-04-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="icd6f5ef38d7b497a9145ce075a0725c3_D20191001-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:LEDFLTubularLEDLampsExcludingRedCapsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-10-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8e50ea1232c74a3a8dc19a60549d605f_D20191001-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:DSeriesLampsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-10-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1295814c41ea47abb4b46801e022a13b_D20191001-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:DSeriesLampsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-10-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i23ab18c4dc8e48cf805f19a0b7845a7e_D20191001-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:OtherLEDProductsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-10-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:InstitutionalInvestorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-01-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i80309835f493449a847d541559d6ff1d_I20200131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:InstitutionalInvestorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-01-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-01-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib438250335dd4372a2373f976a591fda_D20200101-20200131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-01-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i00eb0670d1e149a2a10c5ce329bb1fa2_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i3474f10caa984249abced513511bd9c0_I20200131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-01-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5b14b389eebc47d5bcc51f2dd4812ce8_D20200101-20200131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NotePurchaseAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-01-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4de7feba86f4411e8431d327acf726a6_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i204bf87cc54142adb41b78ecb6f6c2ff_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i26193b3fb7204cbba2c9cccc40d0a8bd_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iab487819a6de4c7eab2a54b9565d76f1_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i84aed75aecf64140a55d8201e6975d87_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:WarrantMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic8d742260c744f68b31555bc2ef0ee31_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:WarrantMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i32a94f674f9c4282bda3725ed1efa2c3_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:WarrantMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i14709b4c82a0489196f048d100db74eb_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">efoi:A2017RestructuringPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iedd1f016b9da46ea84aceb964ba2d25d_I20191231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">efoi:A2017RestructuringPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i27e7396aac0e4b97b740d544c79f4b1b_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">efoi:A2017RestructuringPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ica32c0b758bf4b018d2e8647394b7df2_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">efoi:A2017RestructuringPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i64ee7f906d4b4626994aae8553910939_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">efoi:A2017RestructuringPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibf094f935bc54a188e70ed93967f05b2_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">efoi:A2017RestructuringPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9c3de87bc8c44c3da15548537e3ffc68_I20200630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6d49f812163f4d3d85774dca03acfc52_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i88122b3825db421e9e332c8822107e7e_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7be828f171874cdba42b9f4de1d4b61a_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5bbc9f91e427445cbc2f4a548bc0471a_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8cc262b55c044c01b5b660dcc05b6cc7_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:ToolingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie786e94dc15f47d1a47500ff99d55d06_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:ToolingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i74891aff588748ea823cc93f34624d19_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:ToolingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i311e719c864f4fefa008ef89eb519e26_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:ToolingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9898ed25029e4253af5809004bb34303_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4977389893ac44e393b1813f5f0d864e_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie8ad94c0c98d44158c649f4918166bd3_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6f748e5851a34d9f96a88b9f90daefbc_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id61537b927a64c8e9bf6ef3bbdb02b02_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia383ca85d770415d9f2286930cd26494_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i8d4ec91ede574a03a42c7a5660e5b306_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0b2c25b550af4aa58cb88a8a68b53a2d_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i002e091ac95b419093f8a3ed4f1251ff_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i410f5b8952f743bc8f88687a4f16c3f3_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib0161b0e3e184209b353725f323913c5_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia0e5f09ba4894d82b81dee38c0c97b19_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:FinanceLeaseRightOfUseAssetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i56aa58345d2e46e3bb52b44cd3fa1525_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:FinanceLeaseRightOfUseAssetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i421ce1d0676647019fe74bdb4cb14a23_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i0553e71729f146bfa2eb8010210837d3_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i01c4d52bc6c44c60ae149c09a5bffa8c_I20210121"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-01-21</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="creditfacility"><xbrli:measure>efoi:creditFacility</xbrli:measure></xbrli:unit><xbrli:context id="i95512250be8748d786dbf0e2762ce66f_I20200811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-08-11</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2e571f4b493a41619ace396495da7565_I20200811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:InventoryFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-08-11</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i7b82fe3611ec4325a53fba6ad96f5792_I20210420"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:InventoryFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-04-20</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i31365bd27b594b55bedee87e4420d604_I20200811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:InventoryFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-08-11</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if63cde55efd8429db7da4e3f0431b066_D20200811-20200811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:InventoryFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-08-11</xbrli:startDate><xbrli:endDate>2020-08-11</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i07083608ea224ea6b028b460c546b025_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:InventoryFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia1b70191d97f4ddeb5890c1cc8664025_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:InventoryFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if324298a2a9a437189fe449d8254b842_I20200811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-08-11</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i072f5a4e47054886801ffd3c4729ed59_I20200811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-08-11</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i666c20d9cab542bda9f87104f59ce94a_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i536d2633727441b68c90b3d2772253ad_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i977b6602441d4c5895543f2422ae1a6b_D20200811-20200811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-08-11</xbrli:startDate><xbrli:endDate>2020-08-11</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9c2fbcb4bfb34d568bc852c17bd445d1_D20181211-20181211"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-12-11</xbrli:startDate><xbrli:endDate>2018-12-11</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib4ec9ce606ec4a87aed99ad8f20235e6_I20181211"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-12-11</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2830bb7eb7414664948bc6fcb518c1fb_D20181211-20181211"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2018-12-11</xbrli:startDate><xbrli:endDate>2018-12-11</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i41ebe710d00c457298fbe55e2f33697c_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i953386c333504f1cba95b8d43eb5009b_D20200811-20200811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-08-11</xbrli:startDate><xbrli:endDate>2020-08-11</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="id888f8edb49e460fbb943b31d7eb5988_I20200811"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-08-11</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i60bf27a363d84282adb85969c19c38da_D20190329-20190329"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-03-29</xbrli:startDate><xbrli:endDate>2019-03-29</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1fe3b1abd2b845b58083a94e518739db_D20190329-20190630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-03-29</xbrli:startDate><xbrli:endDate>2019-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1f963ba5a5e2497b89de65c65bf1005d_D20190701-20200116"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-07-01</xbrli:startDate><xbrli:endDate>2020-01-16</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i77ebeec1a11147f4bddd50d2befab70b_I20200116"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-01-16</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ib1abd927789c4c3db262bebaaf83998e_D20200116-20200116"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-16</xbrli:startDate><xbrli:endDate>2020-01-16</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic3472714a7ee4d70a2b3939e8552b242_D20200101-20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i992eeeca44564c2e8de058eec5fd99d2_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i00ea0eba4f7d4d4f97ed3eac19a2d4a6_D20210401-20210401"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-04-01</xbrli:startDate><xbrli:endDate>2021-04-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i680c85489eaa462b88497e2441ad4b39_I20210401"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-04-01</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i60c86ac561af49569ab990cbc12cc983_I20191125"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NotePurchaseAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-11-25</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2ccc45ecf1bd477f92e514d8e5da122c_D20191125-20191125"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NotePurchaseAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2019-11-25</xbrli:startDate><xbrli:endDate>2019-11-25</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i64e293c75b2142608d8349f94ac4c621_D20201201-20201201"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NotePurchaseAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-12-01</xbrli:startDate><xbrli:endDate>2020-12-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if2f8ae782a86447ea1cd2368f97fa536_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NotePurchaseAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i61a322798f454174b23bfa9b494c02fd_I20210427"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:StreetervilleNotePurchaseAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-04-27</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i50ba0c2a78a741cbbd1175c3c8e51ca4_D20210427-20210427"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:StreetervilleNotePurchaseAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-04-27</xbrli:startDate><xbrli:endDate>2021-04-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idf0470d514ad4ac296bafa544697e13e_D20200417-20200417"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:PaycheckProtectionProgramCARESActMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-04-17</xbrli:startDate><xbrli:endDate>2020-04-17</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i8e1357078d1b44c5a35a856fb2002e10_I20200417"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:PaycheckProtectionProgramCARESActMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-04-17</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i2a141a80b8fe446780e60683d3a297dc_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i69bb06e237ad42a589c2f56452f3777b_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3b3aa389d6fc49bfa1333e99d3b82b88_I20171231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2017-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i5017ffc2879e4fab9f6a78f3dd698432_I20190329"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2019-03-29</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i09ca929212e44528ab26cccc51ad1c99_I20190329"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2019-03-29</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i25e4e149c9e645cea2591a854500fb8b_I20200115"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2020-01-15</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iea1223b775ca41c6a6e0e6f61ac4d3d0_I20200115"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-01-15</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i19e09cdb27e34ffdaa5038b9f496b299_D20200116-20200116"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-16</xbrli:startDate><xbrli:endDate>2020-01-16</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i688eff7e70ff4f109664ebab2f07dd0f_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:InstitutionalInvestorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie0fd88a0abe14e9e86e69687ad7c12e6_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:InstitutionalInvestorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic8a5b48784f3454d8b3798eb20083704_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7b7525b9862f4b568f1afcd51170c828_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibc574a748cfb4936926327dcb115d007_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:InstitutionalInvestorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i102df05d8b4d484d854f73dd0afb12a3_I20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:InstitutionalInvestorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="id5e82a695c8944f290e51261e35ca1b3_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:PrivatePlacementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i52ef57e0d6f649c294e6b21e7d493741_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i1274ca278bbb445b90395605a8206ee5_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i02d886360698450a823175c9c4a4352e_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i185da9ffb81e4ff4b93e3ad77b4c1018_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0d1cfbd6b81949b6b7b0d2dfe9c96663_D20210101-20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-01-01</xbrli:startDate><xbrli:endDate>2021-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i4f887d6f2b3e447a9e37eacf99f2e6ac_D20200101-20200331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-01-01</xbrli:startDate><xbrli:endDate>2020-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7ce97b0111a9407fb3e025133e40dd13_I20201231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifc53b698d0bb42419b6699f219dbaa83_I20210331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i35678c0361cb4b5c9871138c4ded16f7_D20210401-20210630"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-04-01</xbrli:startDate><xbrli:endDate>2021-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i17a762aaa3344791adeeb85e487fb039_D20210427-20210427"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:StreetervilleNotePurchaseAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-04-27</xbrli:startDate><xbrli:endDate>2021-04-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2f7c05c5c42d4a7a95b92e6d57c7db6f_D20210427-20210427"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodTwoMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:StreetervilleNotePurchaseAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-04-27</xbrli:startDate><xbrli:endDate>2021-04-27</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="deferral"><xbrli:measure>efoi:deferral</xbrli:measure></xbrli:unit><xbrli:context id="iff32125b13c7454683df0d63faf61ae3_D20210401-20210401"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">efoi:FusionParkMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-04-01</xbrli:startDate><xbrli:endDate>2021-04-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i582bd18c1c3c482099ca1731004fb30f_D20210401-20210401"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000924168</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">efoi:BrilliantStartMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-04-01</xbrli:startDate><xbrli:endDate>2021-04-01</xbrli:endDate></xbrli:period></xbrli:context><ix:relationship arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNS02LTEtMS0w_447a037c-ae2e-483f-9d5f-c90a8f20c03a id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNS0yLTEtMS0w_85c12ce7-51a9-4a19-8abb-260b030a4235 id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtNi0xLTEtMA_77728eb0-8b35-4ad5-83eb-85013861160a id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNi02LTEtMS0xMzc_61837e39-d192-430b-b0c5-f5955d7860bf id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNi02LTEtMS0w_bfedf842-57f1-489c-913c-ef55255d7cad id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTAtNi0xLTEtMA_57bfde58-c0d7-4fb4-a6b3-d43585ac2a14 id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy02LTEtMS0w_de5f3def-89b2-4472-8f54-948c3db66ab8 id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0yLTEtMS0w_712932eb-82a7-40bc-8a6f-f3402dbeb862 id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMi0xLTEtMA_83e4d7dd-40c0-4d8f-b2ae-4bb9417fce42" linkRole="http://www.xbrl.org/2003/role/link" toRefs="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b" order="1"></ix:relationship><ix:relationship arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjctMS0xLTEtMA_f1e9198e-6dae-467f-9e1c-484110a64f83 id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjctMy0xLTEtMA_a8856013-009f-4f56-8215-8c618471a643" linkRole="http://www.xbrl.org/2003/role/link" toRefs="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjgtMC0xLTEtMA_069d9d97-b79c-4362-a491-34deaa1ac2d4" order="1"></ix:relationship></ix:resources></ix:header></div><div id="ia1987147ec8946e7a79d46893e4b989b_1"></div><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">  UNITED STATES</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Washington, DC 20549</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:18pt;font-weight:700;line-height:120%">Form <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:DocumentType" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xODU0_ba24e074-d2fa-4134-bd13-499aa67bc4cd">10-Q</ix:nonNumeric> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:4.325%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:93.475%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:boolballotbox" name="dei:DocumentQuarterlyReport" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6MTdjMDE3MDdkYzNhNDcwMjhjNTk4NzJkMTBhZWU2NjYvdGFibGVyYW5nZToxN2MwMTcwN2RjM2E0NzAyOGM1OTg3MmQxMGFlZTY2Nl8wLTAtMS0xLTA_8f9345d5-2f9b-4b5a-ae70-3b30f4b50bcd">&#9746;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></td></tr></table></div><div style="text-align:center;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">For the quarterly period ended</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt:datemonthdayyearen" name="dei:DocumentPeriodEndDate" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xMjU_65b529c2-44de-4078-9aa8-03bbf9e0ff57">March&#160;31, 2021</ix:nonNumeric></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">OR</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:4.325%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:93.475%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:boolballotbox" name="dei:DocumentTransitionReport" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6NWM4ZWU0YzdmZDc5NDRkZTlmNzVmZmY0ZDJjZTFmZjcvdGFibGVyYW5nZTo1YzhlZTRjN2ZkNzk0NGRlOWY3NWZmZjRkMmNlMWZmN18wLTAtMS0xLTA_4bcaa7bc-b4f2-44ce-8d85-5ace822d1168">&#9744;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">For the transition period from</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">_____________</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">to</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">_____________</span></div></td></tr></table></div><div style="text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:120%">&#160;&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Commission</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">file number <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:EntityFileNumber" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xODU1_59fcfba0-be12-43a7-af79-0199ed3d202b">001-36583</ix:nonNumeric> </span></div><div style="text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:18pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC. </span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(Exact name of registrant as specified in its charter)&#160;&#160;</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:46.993%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:2.565%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:47.142%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:stateprovnameen" name="dei:EntityIncorporationStateCountryCode" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF8wLTAtMS0xLTA_46a30817-7e47-4c68-826f-b4a7d63c1d7b">Delaware</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:EntityTaxIdentificationNumber" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF8wLTItMS0xLTA_04278d6f-295f-403b-a501-7b97ea93938a">94-3021850</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(State or other jurisdiction of incorporation or organization)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(I.R.S. Employer Identification No.)</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:EntityAddressAddressLine1" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF8zLTAtMS0xLTAvdGV4dHJlZ2lvbjpjNDJmOTM4ZjY3MTM0MTBkOWJhNTQ1M2Y3YjIxNjMwOF80_a1f86a8b-2ae3-4a0b-8aea-f36aaee5e0fc">32000&#160;Aurora&#160;Road</ix:nonNumeric>, <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:EntityAddressAddressLine2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF8zLTAtMS0xLTAvdGV4dHJlZ2lvbjpjNDJmOTM4ZjY3MTM0MTBkOWJhNTQ1M2Y3YjIxNjMwOF84_5c01d9cd-d636-473c-abdc-4f9a14dbcecb">Suite B</ix:nonNumeric> <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:EntityAddressCityOrTown" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF8zLTAtMS0xLTAvdGV4dHJlZ2lvbjpjNDJmOTM4ZjY3MTM0MTBkOWJhNTQ1M2Y3YjIxNjMwOF8xMQ_0437ddc7-b6fe-4078-b323-e79aea1eb207">Solon</ix:nonNumeric>, <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:EntityAddressStateOrProvince" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF8zLTAtMS0xLTAvdGV4dHJlZ2lvbjpjNDJmOTM4ZjY3MTM0MTBkOWJhNTQ1M2Y3YjIxNjMwOF8xNQ_2ab5c189-a89b-488e-b09d-27e0aa0b72c3">OH</ix:nonNumeric></span></div></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Address of principal executive offices)</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:EntityAddressPostalZipCode" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF82LTAtMS0xLTA_8c47b60e-8808-4b2b-83b6-7af08f4a4bf7">44139</ix:nonNumeric></span></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Zip Code)</span></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Registrant&#8217;s telephone number, including area code): <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:CityAreaCode" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF84LTAtMS0xLTAvdGV4dHJlZ2lvbjplYTRjMmMxMDEyZTg0ZmI4YTE3ZDc2MzRiMDRhODY5Zl81OA_322d565e-cc47-4302-9ca2-e232bf5b6153">(440)</ix:nonNumeric></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:LocalPhoneNumber" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF84LTAtMS0xLTAvdGV4dHJlZ2lvbjplYTRjMmMxMDEyZTg0ZmI4YTE3ZDc2MzRiMDRhODY5Zl82MQ_077b4e13-db72-4d52-b8ea-6045eef3ab88">715-1300</ix:nonNumeric></span></div></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">None</span></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Former name, former address and former fiscal year, if changed since last report)</span></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Securities registered pursuant to Section&#160;12(b) of the Act: </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:36.911%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:22.876%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:36.913%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="border-left:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Title of each class</span></td><td colspan="3" style="border-left:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Trading<br/>Symbol(s)</span></td><td colspan="3" style="border-left:1pt solid #000000;border-right:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Name of each exchange<br/>on which registered</span></td></tr><tr><td colspan="3" style="border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:Security12bTitle" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6MjU1ZmViY2ZlYzZiNGEyZDhlMGQ5NjI3MWJkYmE4Y2EvdGFibGVyYW5nZToyNTVmZWJjZmVjNmI0YTJkOGUwZDk2MjcxYmRiYThjYV8xLTAtMS0xLTA_617a0382-882d-4847-8359-850a066f7abb">Common Stock, par value $0.0001 per share</ix:nonNumeric></span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:TradingSymbol" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6MjU1ZmViY2ZlYzZiNGEyZDhlMGQ5NjI3MWJkYmE4Y2EvdGFibGVyYW5nZToyNTVmZWJjZmVjNmI0YTJkOGUwZDk2MjcxYmRiYThjYV8xLTEtMS0xLTA_6b14600f-c660-492a-93cd-d7aeb4684cc8">EFOI</ix:nonNumeric></span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:exchnameen" name="dei:SecurityExchangeName" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6MjU1ZmViY2ZlYzZiNGEyZDhlMGQ5NjI3MWJkYmE4Y2EvdGFibGVyYW5nZToyNTVmZWJjZmVjNmI0YTJkOGUwZDk2MjcxYmRiYThjYV8xLTItMS0xLTA_0c7dd98c-353d-4320-8a3e-f30d42936294">The Nasdaq Stock Market LLC</ix:nonNumeric></span></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.&#160; <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:EntityCurrentReportingStatus" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xODU2_facff0b4-8433-434b-a4a5-e6dea10c2ad9">Yes</ix:nonNumeric> </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#9745;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#9744;</span></div><div style="text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (Section 232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).&#160; <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="dei:EntityInteractiveDataCurrent" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xODU3_88474ecf-efc7-49d6-8ab3-b2df20edd5e8">Yes</ix:nonNumeric> </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#9745;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#9744;</span></div><div style="text-indent:9pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company or an emerging growth company. See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company,&#8221; and &#8220;emerging growth company&#8221; in Rule 12b-2 of the Exchange Act.</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:93.567%"><tr><td style="width:1.0%"></td><td style="width:20.618%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:36.243%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.743%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.996%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Large accelerated filer</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9744;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accelerated filer</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9744;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:entityfilercategoryen" name="dei:EntityFilerCategory" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6OGViY2MzMTM4NmI1NGJjZjlhYjQ5N2ZlZGI5MTAxODYvdGFibGVyYW5nZTo4ZWJjYzMxMzg2YjU0YmNmOWFiNDk3ZmVkYjkxMDE4Nl8xLTAtMS0xLTA_ac11f74b-76f3-496f-9ec9-582cd634a586">Non-accelerated filer</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9745;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Smaller reporting company</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:boolballotbox" name="dei:EntitySmallBusiness" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6OGViY2MzMTM4NmI1NGJjZjlhYjQ5N2ZlZGI5MTAxODYvdGFibGVyYW5nZTo4ZWJjYzMxMzg2YjU0YmNmOWFiNDk3ZmVkYjkxMDE4Nl8xLTMtMS0xLTA_e24ed366-6730-4724-8dfb-0bac27d2de1e">&#9745;</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Emerging growth company</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:boolballotbox" name="dei:EntityEmergingGrowthCompany" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6OGViY2MzMTM4NmI1NGJjZjlhYjQ5N2ZlZGI5MTAxODYvdGFibGVyYW5nZTo4ZWJjYzMxMzg2YjU0YmNmOWFiNDk3ZmVkYjkxMDE4Nl8yLTMtMS0xLTA_ce22331b-1669-427f-9c0a-ff23b79b1c0a">&#9744;</ix:nonNumeric></span></td></tr></table></div><div style="text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:120%">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#9744;</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).&#160; Yes </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:boolballotbox" name="dei:EntityShellCompany" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xODU4_0dec91cd-525b-4bf7-846c-07776905910c">&#9744;</ix:nonNumeric></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#9745;</span></div><div style="text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The number of outstanding shares of the registrant&#8217;s common stock, $0.0001 par value, as of May&#160;10, 2021 was <ix:nonFraction unitRef="shares" contextRef="ied75b1bf063b409c8c62ca90898cf369_I20210510" decimals="INF" format="ixt:numdotdecimal" name="dei:EntityCommonStockSharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xODUy_6c314112-fd37-4980-bef4-2d5c8a602cc8">4,027,271</ix:nonFraction>.</span></div><div style="height:27pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_7"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">TABLE OF CONTENTS</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:11.180%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.577%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:76.092%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:6.651%"></td><td style="width:0.1%"></td></tr><tr><td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">PART I - FINANCIAL INFORMATION</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Page</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ITEM 1.</span></td><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">FINANCIAL STATEMENTS</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">a.</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Condensed Consolidated Balance Sheets as of March&#160;31, 2021 (Unaudited) and December&#160;31, 2020 </span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_16">4</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">b.</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Condensed Consolidated Statements of Operations for the three months ended March&#160;31, 2021 and 2020 (Unaudited)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_19">6</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">c.</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Condensed Consolidated Statements of Comprehensive Loss for the&#160;three months ended March&#160;31, 2021 and 2020 (Unaudited)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_25">7</a></span></div></td></tr><tr style="height:8pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">d.</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Condensed Consolidated Statements of Changes in Stockholders' Equity for the three months ended March&#160;31, 2021 and 2020 (Unaudited)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_28">8</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">e.</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Condensed Consolidated Statements of Cash Flows for the three months ended March&#160;31, 2021 and 2020 (Unaudited)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_34">9</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">f.</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Notes to the Condensed Consolidated Financial Statements (Unaudited)</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_46">11</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ITEM 2.</span></td><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_82">30</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ITEM 3.</span></td><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_127">39</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ITEM 4.</span></td><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">CONTROLS AND PROCEDURES</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_130">39</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="12" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">PART II - OTHER INFORMATION</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ITEM 1.</span></td><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">LEGAL PROCEEDINGS</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_136">40</a></span></div></td></tr><tr style="height:8pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ITEM 1A.</span></td><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">RISK FACTORS</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_139">40</a></span></div></td></tr><tr style="height:8pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ITEM 2.</span></td><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_142">40</a></span></div></td></tr><tr style="height:6pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ITEM 3.</span></td><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">DEFAULTS UPON SENIOR SECURITIES</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_145">40</a></span></div></td></tr><tr style="height:6pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ITEM 4.</span></td><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MINE SAFETY DISCLOSURES</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_148">40</a></span></div></td></tr><tr style="height:6pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ITEM 5.</span></td><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">OTHER INFORMATION</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_151">40</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ITEM 6.</span></td><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">EXHIBITS</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_154">41</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="6" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">SIGNATURES</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#ia1987147ec8946e7a79d46893e4b989b_157">43</a></span></div></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_10"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART I - FINANCIAL INFORMATION</span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Forward-looking statements</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Unless the context otherwise requires, all references to &#8220;Energy Focus,&#8221; &#8220;we,&#8221; &#8220;us,&#8221; &#8220;our,&#8221; &#8220;our company,&#8221; or &#8220;the Company&#8221; refer to Energy Focus, Inc., a Delaware corporation, and its consolidated subsidiary for the applicable periods, considered as a single enterprise.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">This Quarterly Report on Form 10-Q (this &#8220;Quarterly Report&#8221;) includes statements that express our opinions, expectations, beliefs, plans, objectives, assumptions or projections regarding future events or future results and therefore are, or may be deemed to be, &#8220;forward-looking statements&#8221; within the meaning of Section 27A of the Securities Act of 1933, as amended (the &#8220;Securities Act&#8221;), and Section 21E of the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;). These forward-looking statements can generally be identified by the use of forward-looking terminology, including the terms &#8220;believes,&#8221; &#8220;estimates,&#8221; &#8220;anticipates,&#8221; &#8220;expects,&#8221; &#8220;feels,&#8221; &#8220;seeks,&#8221; &#8220;forecasts,&#8221; &#8220;projects,&#8221; &#8220;intends,&#8221; &#8220;plans,&#8221; &#8220;may,&#8221; &#8220;will,&#8221; &#8220;should,&#8221; &#8220;could&#8221; or &#8220;would&#8221; or, in each case, their negative or other variations or comparable terminology. These forward-looking statements include all matters that are not historical facts. They appear in a number of places throughout this Quarterly Report and include statements regarding our intentions, beliefs,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">or current expectations concerning, among other things, our results of operations, financial condition, liquidity, prospects, growth, strategies, capital expenditures,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">and the industry in which we operate.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">By their nature, forward-looking statements involve risks and uncertainties because they relate to events and depend on circumstances that may or may not occur in the future. Although we base these forward-looking statements on assumptions that we believe are reasonable when made in light of information currently available to us, we caution you that forward-looking statements are not guarantees of future performance and that our actual results of operations, financial condition and liquidity, and industry developments may differ materially from statements made in or suggested by the forward-looking statements contained in this Quarterly Report. In addition, even if our results of operations, financial condition and liquidity, and industry developments are consistent with the forward-looking statements contained in this Quarterly Report, those results or developments may not be indicative of results or developments in subsequent periods.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">We believe that important factors that could cause our actual results to differ materially from forward-looking statements include, but are not limited to, the risks and uncertainties outlined under &#8220;Risk Factors&#8221; under Part I, Item 1A of our Annual Report on Form 10-K for the year ended December&#160;31, 2020 and other matters described in this Quarterly Report and our other filings with the Securities and Exchange Commission generally. Some of these factors include:</span></div><div style="padding-left:36pt"><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">disruptions and a slowing in the U.S. and global economy and business interruptions experienced by us, our customers and our suppliers as a result of the coronavirus (&#8220;COVID-19&#8221;) pandemic and related impacts on travel, trade and business operations;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">our ability to realize the expected novelty, disinfection effectiveness, affordability and estimated delivery timing of our ultraviolet light disinfection (&#8220;UVCD&#8221;) products and their performance and cost compared to other products;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">our ability to extend our product portfolio into commercial services and consumer products;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">market acceptance of our light-emitting diode (&#8220;LED&#8221;) lighting, control and UVCD technologies and products;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">our need for additional financing in the near term to continue our operations;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">our ability to refinance or extend maturing debt on acceptable terms or at all;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">our ability to continue as a going concern for a reasonable period of time;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">our ability to implement plans to increase sales and control expenses;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">our reliance on a limited number of customers for a significant portion of our revenue, and our ability to maintain or grow such sales levels;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">our ability to add new customers to reduce customer concentration;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">our reliance on a limited number of third-party suppliers and research and development partners, our ability to manage third-party product development and obtain critical components and finished products from such suppliers on acceptable terms and of acceptable quality, and the impact of our fluctuating demand on the stability of such suppliers;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">our ability to timely and efficiently transport products from our third-party suppliers to our facility by ocean marine channels;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">our ability to increase demand in our targeted markets and to manage sales cycles that are difficult to predict and may span several quarters;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">the timing of large customer orders, significant expenses and fluctuations between demand and capacity as we invest in growth opportunities;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">our ability to compete effectively against companies with lower cost structures or greater resources, or more rapid development efforts, and new competitors in our target markets; </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">our ability to successfully scale our network of sales representatives, agents, and distributors to match the sales reach of larger, established competitors;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">our ability to attract, develop and retain qualified personnel, and to do so in a timely manner;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">the impact of any type of legal inquiry, claim or dispute;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">general economic conditions in the United States and in other markets in which we operate or secure products;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">our dependence on military maritime customers and on the levels and timing of government funding available to such customers, as well as the funding resources of our other customers in the public sector and commercial markets;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">business interruptions resulting from geopolitical actions, including war and terrorism, natural disasters, including earthquakes, typhoons, floods and fires, or from health epidemics or pandemics or other contagious outbreaks;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">our ability to respond to new lighting technologies and market trends, and fulfill our warranty obligations with safe and reliable products;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">any delays we may encounter in making new products available or fulfilling customer specifications;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">any flaws or defects in our products or in the manner in which they are used or installed;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">our ability to protect our intellectual property rights and other confidential information, and manage infringement claims by others;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">our compliance with government contracting laws and regulations, through both direct and indirect sale channels, as well as other laws, such as those relating to the environment and health and safety;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">risks inherent in international markets, such as economic and political uncertainty, changing regulatory and tax requirements and currency fluctuations, including tariffs and other potential barriers to international trade;</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">our ability to maintain effective internal controls and otherwise comply with our obligations as a public company; and</span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;padding-left:14.5pt">our ability to maintain compliance with the continued listing standards of The Nasdaq Stock Market (&#8220;Nasdaq&#8221;).</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">In light of the foregoing, we caution you not to place undue reliance on our forward-looking statements. Any forward-looking statement that we make in this Quarterly Report speaks only as of the date of such statement, and we undertake no obligation to update any forward-looking statement or to publicly announce the results of any revision to any of those statements to reflect future events or developments, except as required by law. Comparisons of results for current and any prior periods are not intended to express any future trends or indications of future performance, unless specifically expressed as such, and should only be viewed as historical data. Furthermore, new risks and uncertainties arise from time to time, and it is impossible for us to predict those events or how they may affect us.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Energy Focus</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-style:italic;font-weight:400;line-height:115%;position:relative;top:-3.5pt;vertical-align:baseline">&#174;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-style:italic;font-weight:400;line-height:115%;position:relative;top:-3.5pt;vertical-align:baseline"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Intellitube</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-style:italic;font-weight:400;line-height:115%;position:relative;top:-3.5pt;vertical-align:baseline">&#174;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">, RedCap</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-style:italic;font-weight:400;line-height:115%;position:relative;top:-3.5pt;vertical-align:baseline">&#174;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">, EnFocus&#8482;, nUVo&#8482;, abUV&#8482; and mUVe&#8482; are our registered trademarks. We may also refer to trademarks of other corporations and organizations in this document.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_13"></div><hr style="page-break-after:always"/><div style="min-height:13.5pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM 1. FINANCIAL STATEMENTS</span></div><div id="ia1987147ec8946e7a79d46893e4b989b_16"></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CONDENSED</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CONSOLIDATED BALANCE SHEETS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-style:italic;font-weight:700;line-height:120%">(in thousands,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-style:italic;font-weight:700;line-height:120%">except share and per share amounts) </span></div><div style="text-align:center"><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.416%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.266%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.268%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">March 31,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">December 31,<br/>2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%;text-decoration:underline">(Unaudited)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">ASSETS</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Current assets:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNC0xLTEtMS0w_55fdd6cc-0678-4ae1-bea7-67b004c1dca9">548</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNC0zLTEtMS0w_35931289-3caf-4a5a-9b30-994df5de2326">1,836</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Trade accounts receivable, less allowances of $<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNS0wLTEtMS0wL3RleHRyZWdpb246MjliYmQwZWUwYzAzNGIxMmExN2RmYjdjNTMxMjM1MzFfNTA_5c1c7730-64c6-4143-9b79-dea73933057e">14</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNS0wLTEtMS0wL3RleHRyZWdpb246MjliYmQwZWUwYzAzNGIxMmExN2RmYjdjNTMxMjM1MzFfNTc_ce2fc774-1c5a-49a2-8cb5-f97d5d2a8504">8</ix:nonFraction>, respectively</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNS0xLTEtMS0w_1b7e353f-85c4-4874-98e6-19138338b43e">1,492</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsReceivableNetCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNS0zLTEtMS0w_124bc9bf-3099-4546-a0bb-199d0d5f4228">2,021</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Inventories, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNi0xLTEtMS0w_f665bba7-2dba-42b3-9dd1-4dcefdfbe04c">7,515</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNi0zLTEtMS0w_ec733316-c050-4d29-9be5-b9ab06d5d5ff">5,641</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Short-term deposits</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:DepositsAssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNy0xLTEtMS0yMTk3_6a22951e-c269-4f5f-b966-1a4e004bf58c">784</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:DepositsAssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNy0zLTEtMS01ODM_45cb6e60-128b-4d6c-9901-42fd6a38d99e">796</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Prepaid and other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNy0xLTEtMS0w_f1a975f9-58ed-4c15-9d13-f87b23546edb">778</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNy0zLTEtMS0w_da66c6ac-bf2c-4260-aa13-e1b5f0c19594">782</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Total current assets</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfOS0xLTEtMS0w_1cd49edb-6ab5-48a4-8615-060d03d611ac">11,117</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AssetsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfOS0zLTEtMS0w_15cae66f-c7e2-462b-b928-721872945161">11,076</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Property and equipment, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTEtMS0xLTEtMA_2c6d07ff-d708-452b-b272-9cf938902686">482</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTEtMy0xLTEtMA_b0735946-cdd3-4700-900e-b8e49b23e3ae">420</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Operating lease, right-of-use asset</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTMtMS0xLTEtMA_a04f54dd-a500-4e55-ac48-5ffccf6a2989">676</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTMtMy0xLTEtMA_b807af17-66c8-4c37-aaee-f62fd4505448">794</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Restructured lease, right-of-use asset</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:RestructuredOperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTUtMS0xLTEtMA_ed19d5d2-d323-4e89-a59c-67e62834fb15">54</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="efoi:RestructuredOperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTUtMy0xLTEtMA_ed22cf3f-f8b1-4257-b3f1-652ecf82926c">107</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Total assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTgtMS0xLTEtMA_4f4b8ea3-b8e5-4d72-a499-f0301c7b64e2">12,329</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Assets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTgtMy0xLTEtMA_f8f076dc-a9c6-4531-8bf7-a62361e6fae6">12,397</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">LIABILITIES</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Current liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Accounts payable</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjItMS0xLTEtMA_1bc328bc-9490-46bc-9171-617d72f03952">3,437</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccountsPayableCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjItMy0xLTEtMA_87748382-bc75-4a3a-aa15-84e5f7348f75">2,477</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Accrued liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjMtMS0xLTEtMA_4cd1117b-a90c-4f7f-8512-f9ecb97da105">177</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjMtMy0xLTEtMA_3abf9a88-a57e-4544-805b-490f53bdd4de">45</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Accrued legal and professional fees</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:AccruedProfessionalFeesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjQtMS0xLTEtMA_ba67fcaf-b7cc-4543-8063-b3c3011d376e">19</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:AccruedProfessionalFeesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjQtMy0xLTEtMA_fff00a32-9b21-422f-a505-53da829fdce5">149</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Accrued payroll and related benefits</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:AccruedEmployeeBenefitsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjUtMS0xLTEtMA_600a64e0-43cd-4db2-85a7-6d5b1db32024">787</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:AccruedEmployeeBenefitsCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjUtMy0xLTEtMA_1f9f067d-aabc-4147-ae4f-5239f3780ec4">885</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Accrued sales commissions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:AccruedSalesCommissionCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjYtMS0xLTEtMA_2ecde7b3-bd86-4c6d-a106-7f3c92cfe008">29</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:AccruedSalesCommissionCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjYtMy0xLTEtMA_1564ed10-574c-4c2e-af5b-29acdb0eca52">95</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Accrued restructuring</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:RestructuringReserveCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjgtMS0xLTEtMA_9e5c02d8-56f2-47d6-b418-dabd6859f477">5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:RestructuringReserveCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjgtMy0xLTEtMA_bb83e084-77ea-48d1-83b9-9a7602ceb2ed">11</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Accrued warranty reserve</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjktMS0xLTEtMA_f0d43ad6-2e5c-4064-8d98-2ca9fb16834c">239</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjktMy0xLTEtMA_93912c88-33ca-443a-afaf-a17cb72d79fc">227</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzAtMS0xLTEtMA_c5cf4bb9-f962-41a5-be9e-1568a6b2e8c0">73</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzAtMy0xLTEtMA_73a80c6f-c756-4889-b2fe-1918bc9934cb">72</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzEtMS0xLTEtMA_7e29a17f-f9aa-4e71-898e-bf86f56b8790">609</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzEtMy0xLTEtMA_c28dbe36-cf95-44d5-9268-7f78e17c5976">598</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Restructured lease liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:RestructuredOperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzItMS0xLTEtMA_72fb1cf4-ad23-4f58-a388-a4f3d097f200">85</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="efoi:RestructuredOperatingLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzItMy0xLTEtMA_f1e51ce3-e8d2-4297-90ca-b86e3b5db4d0">168</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Finance lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:FinanceLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzMtMS0xLTEtMA_f65fe3a3-607c-484c-8b22-f3cfa5bb0e53">3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzMtMy0xLTEtMA_a215f03d-2ea4-4759-bbc1-1745a2cb1cd5">3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">PPP loan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="efoi:PaymentProtectionProgramCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzctMS0xLTEtMA_f50dcdc9-1ca6-4e70-aa0a-d22d272dd87b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="efoi:PaymentProtectionProgramCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzctMy0xLTEtMA_2e3f2396-5a62-41fb-9354-e51ac183aa21">529</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Credit line borrowings, net of loan origination fees</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LinesOfCreditCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzgtMS0xLTEtMA_eaf14ef1-1768-404a-9a6a-42e1ef37f536">3,416</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LinesOfCreditCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzgtMy0xLTEtMA_c668f29b-3147-4ad7-abd1-d254734590a4">2,298</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Total current liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzktMS0xLTEtMA_217d9504-0df8-481d-b9e6-5551a76f5dda">8,879</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzktMy0xLTEtMA_c499c9f0-d490-4867-8147-c05e448934f6">7,557</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-style:italic;font-weight:400;line-height:120%">(continued on the next page)</span></div><div style="text-align:center"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:13.5pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CONDENSED</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CONSOLIDATED BALANCE SHEETS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-style:italic;font-weight:700;line-height:120%">(in thousands,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-style:italic;font-weight:700;line-height:120%">except share and per share amounts) </span></div><div style="text-align:center"><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.416%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.266%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.268%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">March 31,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">December 31,<br/>2020</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%;text-decoration:underline">(Unaudited)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Operating lease liabilities, net of current portion</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDMtMS0xLTEtNjkw_2e9f63a1-fe6d-4961-b393-e715ffa6ce8a">172</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDMtMy0xLTEtNjkw_92ea32a6-7c0b-4211-8582-8c1128322318">318</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Finance lease liabilities, net of current portion</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:FinanceLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDUtMS0xLTEtNjkw_b236a4f9-63ea-47e1-a7e8-4d547bd37994">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:FinanceLeaseLiabilityNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDUtMy0xLTEtNjkw_ed6262be-dd76-4221-93a6-66ceed390127">1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">PPP loan, net of current maturities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="efoi:PaymentProtectionProgramNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDYtMS0xLTEtNjkw_73391a89-3689-4acb-a59c-87fdc44c51fd">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="efoi:PaymentProtectionProgramNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDYtMy0xLTEtNjkw_a051e02f-c423-43c7-b415-b6535b0b1a26">266</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Total liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Liabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDgtMS0xLTEtNjkw_111740c0-1f41-4d01-8b0a-a55fc9c48fbe">9,051</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Liabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDgtMy0xLTEtNjkw_2e2e5205-ef90-4f65-bf7f-66d2a1eb9249">8,142</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">STOCKHOLDERS' EQUITY</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-style:italic;font-weight:400;line-height:100%">Preferred stock, par value $<ix:nonFraction unitRef="usdPerShare" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTEtMC0xLTEtNjg0L3RleHRyZWdpb246NWZhYzgzZWQ1M2Y4NGVmZmFiNjE1NjI5YTFlODQyNDlfMzI5ODUzNDg4MzM4NA_094493f1-d946-4450-85f4-4a0e82f917e0"><ix:nonFraction unitRef="usdPerShare" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTEtMC0xLTEtNjg0L3RleHRyZWdpb246NWZhYzgzZWQ1M2Y4NGVmZmFiNjE1NjI5YTFlODQyNDlfMzI5ODUzNDg4MzM4NA_2faf74c8-d6c0-4a38-a449-717a1b384c7f">0.0001</ix:nonFraction></ix:nonFraction> per share:</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Authorized: <ix:nonFraction unitRef="shares" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTItMC0xLTEtNjg0L3RleHRyZWdpb246ODExMjlmMWM4NjI2NDUxMWJmMjE0OGY5N2Y4ODg5ZTlfMjE5OTAyMzI1NTYzMw_3d482c7c-e6a4-405b-9068-ec2b93ecbbbc"><ix:nonFraction unitRef="shares" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTItMC0xLTEtNjg0L3RleHRyZWdpb246ODExMjlmMWM4NjI2NDUxMWJmMjE0OGY5N2Y4ODg5ZTlfMjE5OTAyMzI1NTYzMw_6227fc3a-ec5d-4af4-9192-e66dc747f42e">5,000,000</ix:nonFraction></ix:nonFraction> shares (<ix:nonFraction unitRef="shares" contextRef="iae645623f77e42e5b5e147a4d7803174_I20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTItMC0xLTEtNjg0L3RleHRyZWdpb246ODExMjlmMWM4NjI2NDUxMWJmMjE0OGY5N2Y4ODg5ZTlfMTA5OTUxMTYyODAxMQ_49c32bb3-67f6-4d28-8fda-99858e89f8b1"><ix:nonFraction unitRef="shares" contextRef="i8bba8aca45b447dca8a0fe6aadddcdd7_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTItMC0xLTEtNjg0L3RleHRyZWdpb246ODExMjlmMWM4NjI2NDUxMWJmMjE0OGY5N2Y4ODg5ZTlfMTA5OTUxMTYyODAxMQ_c200cda0-50e3-469d-90ca-6a4c8550471c">3,300,000</ix:nonFraction></ix:nonFraction> designated as Series A Convertible Preferred Stock) at March&#160;31, 2021 and December&#160;31, 2020 </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Issued and outstanding: <ix:nonFraction unitRef="shares" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTMtMC0xLTEtNjg0L3RleHRyZWdpb246NWU4MzhkZjI0Nzk2NGNhYmJlZjAxOGEzNTM2ZTM4NmFfMjE5OTAyMzI1NTYzOA_307415c3-66b9-40df-9c74-74f164b188d3"><ix:nonFraction unitRef="shares" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTMtMC0xLTEtNjg0L3RleHRyZWdpb246NWU4MzhkZjI0Nzk2NGNhYmJlZjAxOGEzNTM2ZTM4NmFfMjE5OTAyMzI1NTYzOA_64dcc867-280a-4530-b23f-ea8dfdbcbeda"><ix:nonFraction unitRef="shares" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTMtMC0xLTEtNjg0L3RleHRyZWdpb246NWU4MzhkZjI0Nzk2NGNhYmJlZjAxOGEzNTM2ZTM4NmFfMjE5OTAyMzI1NTYzOA_88375d55-de4e-4702-85d3-aaf59165f5a2"><ix:nonFraction unitRef="shares" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTMtMC0xLTEtNjg0L3RleHRyZWdpb246NWU4MzhkZjI0Nzk2NGNhYmJlZjAxOGEzNTM2ZTM4NmFfMjE5OTAyMzI1NTYzOA_c355139f-7ed5-4a64-8ac0-c6893709a2bc">2,597,470</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction> at March&#160;31, 2021 and December&#160;31, 2020</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:PreferredStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTMtMS0xLTEtNjkw_e94757ef-8621-47c0-b023-b7ea9013c0be">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:PreferredStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTMtMy0xLTEtNjkw_de19bf1b-1480-4174-b738-e1d49a348b80">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-style:italic;font-weight:400;line-height:100%">Common stock, par value $<ix:nonFraction unitRef="usdPerShare" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTQtMC0xLTEtNjg0L3RleHRyZWdpb246NjM3NGU0MDcwNDg1NGFjMWJjOTYwNWE4YzA2MmFjNjlfMzI5ODUzNDg4MzM4MQ_45a5ad8d-e9be-4806-b67f-51d19cf7fae7"><ix:nonFraction unitRef="usdPerShare" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTQtMC0xLTEtNjg0L3RleHRyZWdpb246NjM3NGU0MDcwNDg1NGFjMWJjOTYwNWE4YzA2MmFjNjlfMzI5ODUzNDg4MzM4MQ_964234b7-d873-4be7-ae45-cea957dd2abe">0.0001</ix:nonFraction></ix:nonFraction> per share:</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Authorized: <ix:nonFraction unitRef="shares" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTUtMC0xLTEtNjg0L3RleHRyZWdpb246MDlhODM0YjZiNjE2NGY5YzhkMTFkOTlkN2EzMjMzMTZfMjE5OTAyMzI1NTYzNQ_5919fe6d-af0b-48da-90ae-5f43cf985e45"><ix:nonFraction unitRef="shares" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTUtMC0xLTEtNjg0L3RleHRyZWdpb246MDlhODM0YjZiNjE2NGY5YzhkMTFkOTlkN2EzMjMzMTZfMjE5OTAyMzI1NTYzNQ_f2a47c47-52b3-42ed-9c9c-91ae035aebdf">50,000,000</ix:nonFraction></ix:nonFraction> shares at March&#160;31, 2021 and December&#160;31, 2020</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Issued and outstanding: <ix:nonFraction unitRef="shares" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTYtMC0xLTEtNjg0L3RleHRyZWdpb246OGNjZTk0N2Y1MTQ4NDVmZDg5M2QzMzE2MTJkMzE2ZWJfMjE5OTAyMzI1NTY1MQ_3fad5cd7-c45c-4938-8aa3-a16623db3aa0"><ix:nonFraction unitRef="shares" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTYtMC0xLTEtNjg0L3RleHRyZWdpb246OGNjZTk0N2Y1MTQ4NDVmZDg5M2QzMzE2MTJkMzE2ZWJfMjE5OTAyMzI1NTY1MQ_63602ebb-7ddf-4e7f-9cdb-3be9041da7e0">3,682,816</ix:nonFraction></ix:nonFraction> at March&#160;31, 2021 and <ix:nonFraction unitRef="shares" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesOutstanding" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTYtMC0xLTEtNjg0L3RleHRyZWdpb246OGNjZTk0N2Y1MTQ4NDVmZDg5M2QzMzE2MTJkMzE2ZWJfMjE5OTAyMzI1NTY2Mw_2a075666-4dc7-4e4d-9b6e-c1270dcf879a"><ix:nonFraction unitRef="shares" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTYtMC0xLTEtNjg0L3RleHRyZWdpb246OGNjZTk0N2Y1MTQ4NDVmZDg5M2QzMzE2MTJkMzE2ZWJfMjE5OTAyMzI1NTY2Mw_dfa8af07-e20f-40b5-89a9-2b3c75b97cc3">3,525,374</ix:nonFraction></ix:nonFraction> at December&#160;31, 2020</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTYtMS0xLTEtNjkw_eb54fdab-761f-4fa8-a6dd-f1a594dbb0ca">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTYtMy0xLTEtNjkw_b76e65c1-b26e-4642-acda-30426d5d45f8">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Additional paid-in capital</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdditionalPaidInCapitalCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTctMS0xLTEtNjkw_32fa76b4-70cb-419b-b362-8dba044095ff">135,778</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdditionalPaidInCapitalCommonStock" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTctMy0xLTEtNjkw_0371c76c-ca8f-4333-b44f-cafce6d0cf52">135,113</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Accumulated other comprehensive loss</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTgtMS0xLTEtNjkw_dbd98dd7-f9f4-4bfc-8bf9-1229097f63e4">3</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTgtMy0xLTEtNjkw_ec42b8ef-48da-49c7-b4a9-7e0e64b54249">3</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Accumulated deficit</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTktMS0xLTEtNjkw_cd4237a4-9094-4901-920e-21f28cf1aef1">132,497</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTktMy0xLTEtNjkw_8c6f0a1d-a9f3-4287-95e1-e4b02b8cf06a">130,855</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Total stockholders' equity</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNjAtMS0xLTEtNjkw_a9ee2e59-3832-4431-a944-e1b40bac631c">3,278</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNjAtMy0xLTEtNjkw_3f84f2e1-a5f9-4511-8a88-3ba046266ff4">4,255</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Total liabilities and stockholders' equity</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNjEtMS0xLTEtNjkw_ab838a65-0c5b-4423-bf56-6b7d6f53541f">12,329</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNjEtMy0xLTEtNjkw_81c2e7b5-8c08-4550-a9c9-9c2c484720b7">12,397</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these condensed consolidated financial statements.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_19"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CONDENSED</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CONSOLIDATED STATEMENTS OF OPERATIONS</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-style:italic;font-weight:700;line-height:120%">(in thousands, except per share amounts)</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">(Unaudited)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:96.246%"><tr><td style="width:1.0%"></td><td style="width:77.059%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.508%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.424%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.509%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Net sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMi0xLTEtMS0w_18e6e468-7200-43c4-9ff8-35bb38d74ae0">2,637</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMi0zLTEtMS0w_d6e43fb8-be77-4175-b5ef-ff0412faf4df">3,783</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Cost of sales</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMy0xLTEtMS0w_f05fd8db-5f96-41dc-b930-95f3db8af68e">2,084</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CostOfGoodsAndServicesSold" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMy0zLTEtMS0w_7ab0d6d2-9ebd-44a2-a021-33bbe317fad7">2,751</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfNC0xLTEtMS0w_4dd7cdc2-40bb-4412-aa79-861c39925882">553</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GrossProfit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfNC0zLTEtMS0w_3a0c5caf-4f8b-4435-8774-00fe00946de5">1,032</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:12pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Operating expenses:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Product development</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfNy0xLTEtMS0w_9df4378f-9500-4dc8-a629-58ca9bf5aab4">653</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfNy0zLTEtMS0w_c1e7f3ae-6306-45b0-95f6-94528a58038b">282</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Selling, general, and administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfOC0xLTEtMS0w_ede3e182-7c45-40ba-8576-49b970108db6">2,218</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfOC0zLTEtMS0w_f8ef23f2-c051-45a7-afbd-80368671c257">2,027</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Restructuring</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" name="us-gaap:RestructuringCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfOS0xLTEtMS0w_45ef9e50-a491-4466-aa4e-9ced26e61a1a">19</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:RestructuringCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfOS0zLTEtMS0w_435071a1-157e-48db-a35a-d135f531a5aa">14</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Total operating expenses</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingExpenses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTAtMS0xLTEtMA_82e3269e-91d8-4515-8ce3-398ffc7a5c76">2,852</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:OperatingExpenses" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTAtMy0xLTEtMA_3914c7b0-2556-4202-98c6-7bd6e76938c2">2,295</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Loss from operations</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTEtMS0xLTEtMA_d11c1e58-cc17-4291-8e5d-01752e5d249c">2,299</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:OperatingIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTEtMy0xLTEtMA_56865c25-15a6-4a7e-9693-80c1f3cf9c95">1,263</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:12pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Other expenses (income):</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:InterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTQtMS0xLTEtMA_a1a1426b-4a02-4d3e-bb91-e57d8a54438f">127</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:InterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTQtMy0xLTEtMA_376b4803-ff65-4c15-8ab1-152203fc9a27">133</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Gain on forgiveness of PPP loan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTUtMS0xLTEtMA_b6f329d3-de66-4861-ab6c-24d38fded0d6">801</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:zerodash" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTUtMy0xLTEtMA_55e44c00-031b-451b-b4cd-1f59e8d42553">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Gain from change in fair value of warrants</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:FairValueAdjustmentOfWarrants" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTYtMS0xLTEtMA_a1e4c38f-cfcc-4f4a-9af2-767978119147">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:FairValueAdjustmentOfWarrants" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTYtMy0xLTEtMA_3c8044a3-c727-4ea7-8aa3-ec9a39046986">873</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Other expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTctMS0xLTEtMA_fe365a71-f128-416a-bbbc-c4bb106495e4">17</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTctMy0xLTEtMA_ed3286d0-7f1a-4201-bc89-c27e82c1b919">18</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Net loss</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjEtMS0xLTEtMA_bb3edf58-4cc7-47f6-8252-12a01a678462">1,642</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjEtMy0xLTEtMA_d8e287b8-7096-4d4e-996c-1465560e0dff">541</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:12pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Net loss per common share - basic and diluted</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Net loss</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicAndDilutedShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjQtMS0xLTEtMA_f24c754f-5fbd-4f5d-b320-62eeb9ef9941">0.45</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="2" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsPerBasicAndDilutedShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjQtMy0xLTEtMA_cc03605a-470e-4e4c-81fc-0814b0ecc328">0.18</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:12pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Weighted average shares of common stock outstanding:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Basic and diluted *</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjctMS0xLTEtMA_f1e9198e-6dae-467f-9e1c-484110a64f83">3,612</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjctMy0xLTEtMA_a8856013-009f-4f56-8215-8c618471a643">3,086</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="12" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:footnote id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjgtMC0xLTEtMA_069d9d97-b79c-4362-a491-34deaa1ac2d4" footnoteRole="http://www.xbrl.org/2003/role/footnote">* Shares outstanding for prior periods have been restated for the 1-for-5 reverse stock split effective June 11, 2020.</ix:footnote></span></div></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these condensed consolidated financial statements.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">6</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_25"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CONDENSED</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CONSOLIDATED STATEMENTS OF COMPREHENSIVE LOSS</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-style:italic;font-weight:700;line-height:120%">(in thousands)</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:89.039%"><tr><td style="width:1.0%"></td><td style="width:75.291%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.198%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.643%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.368%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Net loss</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yNS9mcmFnOjIxYWFiZjllODMyMTRkOTE5Y2RlNjgwOTQyMzJhMWU4L3RhYmxlOjE1MWJjNmI4MDViZDQ1OTA4ZWRmZmJlMDhjNjNhODk5L3RhYmxlcmFuZ2U6MTUxYmM2YjgwNWJkNDU5MDhlZGZmYmUwOGM2M2E4OTlfMi0xLTEtMS0w_c28f8025-a715-4224-bb37-cd68c483e6b2">1,642</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yNS9mcmFnOjIxYWFiZjllODMyMTRkOTE5Y2RlNjgwOTQyMzJhMWU4L3RhYmxlOjE1MWJjNmI4MDViZDQ1OTA4ZWRmZmJlMDhjNjNhODk5L3RhYmxlcmFuZ2U6MTUxYmM2YjgwNWJkNDU5MDhlZGZmYmUwOGM2M2E4OTlfMi0zLTEtMS0w_4ca19d37-f6ea-4b4a-9759-96b084854920">541</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Other comprehensive income:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Foreign currency translation adjustments</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yNS9mcmFnOjIxYWFiZjllODMyMTRkOTE5Y2RlNjgwOTQyMzJhMWU4L3RhYmxlOjE1MWJjNmI4MDViZDQ1OTA4ZWRmZmJlMDhjNjNhODk5L3RhYmxlcmFuZ2U6MTUxYmM2YjgwNWJkNDU5MDhlZGZmYmUwOGM2M2E4OTlfNS0xLTEtMS0w_a2c020b1-9c37-4977-90f5-ad544de45336">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:zerodash" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yNS9mcmFnOjIxYWFiZjllODMyMTRkOTE5Y2RlNjgwOTQyMzJhMWU4L3RhYmxlOjE1MWJjNmI4MDViZDQ1OTA4ZWRmZmJlMDhjNjNhODk5L3RhYmxlcmFuZ2U6MTUxYmM2YjgwNWJkNDU5MDhlZGZmYmUwOGM2M2E4OTlfNS0zLTEtMS0w_af182878-29fb-4e5b-bbfe-acffab8bb827">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Comprehensive loss</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yNS9mcmFnOjIxYWFiZjllODMyMTRkOTE5Y2RlNjgwOTQyMzJhMWU4L3RhYmxlOjE1MWJjNmI4MDViZDQ1OTA4ZWRmZmJlMDhjNjNhODk5L3RhYmxlcmFuZ2U6MTUxYmM2YjgwNWJkNDU5MDhlZGZmYmUwOGM2M2E4OTlfNy0xLTEtMS0w_cd8d1ec1-40c0-4df2-b5da-07631a4c42f2">1,642</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yNS9mcmFnOjIxYWFiZjllODMyMTRkOTE5Y2RlNjgwOTQyMzJhMWU4L3RhYmxlOjE1MWJjNmI4MDViZDQ1OTA4ZWRmZmJlMDhjNjNhODk5L3RhYmxlcmFuZ2U6MTUxYmM2YjgwNWJkNDU5MDhlZGZmYmUwOGM2M2E4OTlfNy0zLTEtMS0w_077c1de3-239d-4b94-b353-3e336390475c">541</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these condensed consolidated financial statements.&#160;</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">7</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_28"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONDENSED</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS&#8217; EQUITY</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">(in thousands)</span></div><div style="text-align:center;text-indent:-22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:29.530%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.400%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.755%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.400%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.356%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.400%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.755%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.400%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.906%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:6.857%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.461%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.110%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.970%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%">Preferred<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%">Common<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%">Additional<br/>Paid-in<br/>Capital</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%">Accumulated<br/>Other<br/>Comprehensive Loss</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%">Accumulated<br/>Deficit</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%">Total<br/>Stockholders'<br/>Equity</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%;text-decoration:underline">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%;text-decoration:underline">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%;text-decoration:underline">Shares*</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%;text-decoration:underline">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Balance at December 31, 2020</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="iefa2f8c5d2494f84a4889f4269ec295c_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy0yLTEtMS0w_fc32fdc2-9bdc-4bfb-bda6-b1c4b1eaa15d">2,597</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iefa2f8c5d2494f84a4889f4269ec295c_I20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy00LTEtMS0w_f0cc5bff-08d1-4c66-b5d5-48ead5fee00d">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ib0c30d855fb94190b54430d1d98b67d2_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy02LTEtMS0w_de5f3def-89b2-4472-8f54-948c3db66ab8">3,525</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib0c30d855fb94190b54430d1d98b67d2_I20201231" decimals="-3" format="ixt:zerodash" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy04LTEtMS0w_64822e0c-0368-40ce-92ab-98c65f29cc3b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ifb09e59072d14268b8167df84d28bcbb_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy0xNC0xLTEtMA_7656fb47-1c39-4f69-82ce-3cbd8209df5c">135,113</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic25ef8ed452643c192dc1b856cce88ce_I20201231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy0xNi0xLTEtMA_2a284a19-f879-4c16-8196-0d0608bda42a">3</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i935f80c4157c4844940f1b9e9b3bbc9b_I20201231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy0xOC0xLTEtMA_ff1d77eb-1dcb-4a7d-b128-c566f3e11d1d">130,855</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy0yMC0xLTEtMA_e2257b9e-7fd8-4ed0-ba34-ba78ce37fb64">4,255</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Issuance of common stock under employee stock option and stock purchase plans</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i8311295ceced4887b52bb77f08688ba2_D20210101-20210331" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNS02LTEtMS0w_447a037c-ae2e-483f-9d5f-c90a8f20c03a">1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNS0yMC0xLTEtMA_c32c3741-1d2b-413b-a027-5850e87a592d">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Issuance of common stock upon the exercise of warrants</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i8311295ceced4887b52bb77f08688ba2_D20210101-20210331" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNi02LTEtMS0w_bfedf842-57f1-489c-913c-ef55255d7cad">156</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9ef8836cce7e40659ce9d5656d0e1dc3_D20210101-20210331" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNi0xNC0xLTEtMA_caad0bee-cd1f-4427-8d54-712a88bf2790">527</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueNewIssues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNi0yMC0xLTEtMA_ca1587f9-ac9d-45ae-b621-f2d69db89056">527</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Common stock withheld in lieu of income tax withholding on vesting of restricted stock units</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i8311295ceced4887b52bb77f08688ba2_D20210101-20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTAtNi0xLTEtMA_57bfde58-c0d7-4fb4-a6b3-d43585ac2a14">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9ef8836cce7e40659ce9d5656d0e1dc3_D20210101-20210331" decimals="-3" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTAtMTQtMS0xLTA_b7f555f5-555a-485d-9b21-e6445b2ec38e">2</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTAtMjAtMS0xLTA_c894be98-d4c3-4087-91da-5bf7f8094342">2</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9ef8836cce7e40659ce9d5656d0e1dc3_D20210101-20210331" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTEtMTQtMS0xLTA_ec86436e-8256-4546-9809-dfe97279d4ff">140</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTEtMjAtMS0xLTA_81fe8441-cf7f-4ffa-bc14-72cc70ff436c">140</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net loss for the three months ended March 31, 2021</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i914b601634db4c02a91ffcca4c1681dd_D20210101-20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperations" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTItMTgtMS0xLTA_d9f730a7-2a25-404a-bf97-ebcad592a0fd">1,642</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperations" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTItMjAtMS0xLTA_52abffed-0bb2-4f3e-9c2e-9ef820da343d">1,642</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Balance at March 31, 2021</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic30667e4d1c14c38b17e5e0c135745cc_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtMi0xLTEtMA_0c44b2b9-0b4a-481c-ab2f-121bfff72f9a">2,597</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic30667e4d1c14c38b17e5e0c135745cc_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtNC0xLTEtMA_d2ba6800-4af6-458d-ae48-c31f87ca7055">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic6127dfec7cc4a26a5679368ae0f6331_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtNi0xLTEtMA_77728eb0-8b35-4ad5-83eb-85013861160a">3,682</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic6127dfec7cc4a26a5679368ae0f6331_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtOC0xLTEtMA_4d6f8d70-635e-4521-93c7-491d622ca290">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1feef45a88014e6f88c7c491aef496dd_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtMTQtMS0xLTA_587a795b-6e6c-451d-9d8e-dee0d8b81a72">135,778</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id717036fa6a84777abf568d01d8c77d7_I20210331" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtMTYtMS0xLTA_9269bdf3-75be-48bd-9884-d3fa91d2aa42">3</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i65811a43f59446e092002acba8e94052_I20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtMTgtMS0xLTA_196a48fd-dea5-42e2-a535-a85adb147b6b">132,497</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtMjAtMS0xLTA_ab1a9132-059c-4c28-bdde-3355f32a9b5f">3,278</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-bottom:6pt;margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.849%"><tr><td style="width:1.0%"></td><td style="width:29.576%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.401%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.764%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.401%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.366%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.401%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.764%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.401%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.366%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.401%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:6.869%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.401%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.478%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.401%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.125%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.401%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.984%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%">Preferred<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%">Common<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%">Additional<br/>Paid-in<br/>Capital</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%">Accumulated<br/>Other<br/>Comprehensive<br/>Loss</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%">Accumulated<br/>Deficit</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%">Total<br/>Stockholders'<br/>Equity</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%;text-decoration:underline">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%;text-decoration:underline">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%;text-decoration:underline">Shares*</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-weight:700;line-height:100%;text-decoration:underline">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Balance at December 31, 2019</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i79484b12568d4589885611a2120d0f97_I20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0yLTEtMS0xMzM_6d662255-4615-4a37-9d1e-4736ce51944a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i79484b12568d4589885611a2120d0f97_I20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy00LTEtMS0xMzM_f95fdd54-053a-4039-b3f6-6bca0ec2ffe4">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="if08ae7d128714b3e92be1b377916eb91_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0yLTEtMS0w_712932eb-82a7-40bc-8a6f-f3402dbeb862">2,486</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if08ae7d128714b3e92be1b377916eb91_I20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy00LTEtMS0w_3fe0df87-1c9b-4c67-8d95-d4f966c1ae76">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">128873000</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id5f8d6f4d1b44677bcc8adf664cf853c_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0xMC0xLTEtMA_dad79e5c-7ce6-4aae-9181-7f010a4aedd8">128,873</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6a96f27ca97a4544a2d8a3dc39035908_I20191231" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0xMi0xLTEtMA_c882d721-79ae-47fe-a599-8cad9887b610">3</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic3460a1e7c5f44a09209f32a5366d644_I20191231" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0xNC0xLTEtMA_ed679272-be2a-4e1c-a7cb-91888dd77c37">124,874</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">-124874000</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia14618e080534548a2781f9ad7ec8f84_I20191231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0xNi0xLTEtMA_6abdb881-b4ee-43d4-883b-ab8b21e2df6e">3,996</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Issuance of common stock under employee stock option and stock purchase plans</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i81985727a69745758bddf991481d0505_D20200101-20200331" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNS0yLTEtMS0w_85c12ce7-51a9-4a19-8abb-260b030a4235">5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:zerodash" name="us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNS0xNi0xLTEtMA_50c7233e-f5bf-4187-8f9a-53c713f2730c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Issuance of common stock and warrants</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i81985727a69745758bddf991481d0505_D20200101-20200331" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesPeriodIncreaseDecrease" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNi02LTEtMS0xMzc_61837e39-d192-430b-b0c5-f5955d7860bf">688</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i67803bc7a01c456e80a6846be17ef60d_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNi0xNC0xLTEtMTM3_a8723158-4f37-4f25-b920-65269204860d">2,749</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNi0yMC0xLTEtMTM3_881393a5-6317-4844-9cf9-5974233a3ea1">2,749</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Offering costs on issuance of common stock and warrants</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i67803bc7a01c456e80a6846be17ef60d_D20200101-20200331" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNy0xNC0xLTEtMTM3_c29f1a11-b984-433a-995a-53f4c6d08913">474</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNy0yMC0xLTEtMTM3_0269d7f1-a709-4335-9deb-d64efb04d1e1">474</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Warrant liability</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i67803bc7a01c456e80a6846be17ef60d_D20200101-20200331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfOC0xNC0xLTEtMTM3_003c6989-0667-43a3-a70a-ecaa9ff5e4bd">1,636</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfOC0yMC0xLTEtMTM3_ae50ee55-07f9-46c9-bc81-958814068589">1,636</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Conversion of notes to preferred stock</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ied33f6c53d764225aa6f8c145679b518_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfOS0yLTEtMS0xMzc_ccf11c70-f580-4742-8acf-f39a7a68bc43">2,709</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9455098d06554ec0adf612293c2144a1_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfOS0xNC0xLTEtMTM3_c476341e-c0d7-466c-96f7-6cd8245ce5bf">1,769</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0a8148c40d814bfd89d54a226595752e_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfOS0yMC0xLTEtMTM3_7d5b03b5-3fe2-4655-b917-7ed67bc17413">1,769</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i67803bc7a01c456e80a6846be17ef60d_D20200101-20200331" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNy0xMC0xLTEtMA_48c4967e-c49d-446c-be65-f2a20531f9db">20</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNy0xNi0xLTEtMA_0340fa2e-7f5d-4a4c-8675-d461a48239f7">20</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net loss for the three months ended March 31, 2020</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i4214f4a61aea40e8bef111db565b878e_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperations" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTAtMTQtMS0xLTA_e942d10e-bb48-4d8f-aa23-b8e260bae3a7">541</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperations" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTAtMTYtMS0xLTA_c446c81e-7641-4cf1-b3c1-8990dab3e3bf">541</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Balance at March 31, 2020</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i7aebac5aec544ae3b2afb6da8016cdc9_I20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTUtMi0xLTEtMTYw_37a34a2c-dcbb-4162-ae98-a7b866353cbf">2,709</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7aebac5aec544ae3b2afb6da8016cdc9_I20200331" decimals="-3" format="ixt:zerodash" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTUtNC0xLTEtMTYw_bc622e9c-9663-4f7b-a087-cf4c9cdfa80c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i1c85bdd333f64a73bad6e2d47e396c8d_I20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:SharesOutstanding" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMi0xLTEtMA_83e4d7dd-40c0-4d8f-b2ae-4bb9417fce42">3,179</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1c85bdd333f64a73bad6e2d47e396c8d_I20200331" decimals="-3" format="ixt:zerodash" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtNC0xLTEtMA_1702bdcf-ef14-4b1a-98d7-476aa264c216">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i26e85c903f5047c7b6a506e3150f982a_I20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMTAtMS0xLTA_df17f54e-7675-4917-99cb-e7b4d8fe24e5">131,301</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8b380c143505472ea52a1d6c64de8ec9_I20200331" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMTItMS0xLTA_a301f7bf-6c61-4d38-84a9-cb72424ad08c">3</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i966f4d480fe049d7b6c17f4a72dc83da_I20200331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMTQtMS0xLTA_0ecc7c83-0974-4be6-af8f-e9e79123f281">125,415</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMTYtMS0xLTA_5de3a284-2986-4c68-bebd-49679d32e4d2">5,883</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="margin-top:9pt;text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-indent:9pt"><span><br/></span></div><div style="text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:footnote id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b" footnoteRole="http://www.xbrl.org/2003/role/footnote">*Shares outstanding for prior periods have been restated for the 1-for-5 reverse stock split effective June 11, 2020.</ix:footnote></span></div><div style="text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these condensed consolidated financial statements.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">8</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_34"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CONDENSED</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CONSOLIDATED STATEMENTS OF</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CASH FLOWS</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-style:italic;font-weight:700;line-height:120%">(in thousands)</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:79.230%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.359%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.361%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Cash flows from operating activities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Net loss</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncomeLossFromContinuingOperations" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMy0xLTEtMS0w_2d4a8a01-37e6-4cf8-a94c-60fa3eba3f32">1,642</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperations" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMy0zLTEtMS0w_0118eb9e-29df-401a-976c-a20e81290320">541</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Adjustments to reconcile net loss to net cash used in (provided by) operating activities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Gain on forgiveness of PPP loan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNS0xLTEtMS0yMTkw_f939ebfa-6a0e-4d3e-b8c4-d73f40373ef9">801</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:zerodash" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNS0zLTEtMS0yMTkw_a0f5aef3-7064-4720-b93a-fc697a820bcf">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Depreciation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:Depreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNS0xLTEtMS0w_a4d99435-50b3-4529-8a11-452a8fee7a54">47</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:Depreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNS0zLTEtMS0w_7f0f0ba0-f291-401a-81f9-e327de2aa303">46</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNi0xLTEtMS0w_d7914089-81cf-45c6-ada0-0eb315b08751">140</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNi0zLTEtMS0w_845e914a-29ab-4a3f-a543-1b0cd1d3720d">20</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Change in fair value of warrant liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:FairValueAdjustmentOfWarrants" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNy0xLTEtMS0w_e924f7c4-3c8c-4bb0-badb-39a32f866c7c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:FairValueAdjustmentOfWarrants" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNy0zLTEtMS0w_2564f006-e1d5-417e-858c-2ac9ca8327ad">873</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Provision for doubtful accounts receivable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfOC0xLTEtMS0w_4c82703e-302a-49c7-94d3-e1e4c730f995">6</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfOC0zLTEtMS0w_27b80ffe-12ef-4f09-ba45-f9880c4833e7">12</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Provision for slow-moving and obsolete inventories</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:InventoryWriteDown" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfOS0xLTEtMS0w_b4c49a04-cd4c-413e-b04c-7c6942df5c9d">89</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:InventoryWriteDown" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfOS0zLTEtMS0w_a2b1e3c2-7dd1-4ea3-9264-0a9d0479803c">78</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Provision for warranties</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="efoi:IncreaseDecreaseInProvisionForWarranties" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTAtMS0xLTEtMA_efcfc632-a706-4e27-b8ab-f8087ee786fd">12</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="efoi:IncreaseDecreaseInProvisionForWarranties" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTAtMy0xLTEtMA_bcde571b-199e-4511-8be9-9a7229679d06">44</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Amortization of loan discounts and origination fees</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" name="us-gaap:AmortizationOfDeferredLoanOriginationFeesNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTItMS0xLTEtMA_206faaaa-46e0-493b-9438-e8f5c6076350">38</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:AmortizationOfDeferredLoanOriginationFeesNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTItMy0xLTEtMA_5b3ab201-256f-49c7-84ee-28338a548f93">38</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Changes in operating assets and liabilities (Sources / (Uses) of cash):</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTUtMS0xLTEtMA_84b067c7-a03b-40c6-b20f-3ec6fe3f518a">532</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTUtMy0xLTEtMA_32dbe582-dc56-4aca-b44a-75d452311b1f">445</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInInventories" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTYtMS0xLTEtMA_f2a349f4-cfe0-4d53-a94f-fb71b27a98e7">1,963</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:IncreaseDecreaseInInventories" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTYtMy0xLTEtMA_66483748-33a5-4a05-8875-3da83b6d7638">1,546</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Short-term deposits</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInDepositOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTctMS0xLTEtMA_7eb1faa5-0b4f-45dc-a1e5-f69406feac70">12</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:IncreaseDecreaseInDepositOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTctMy0xLTEtMA_cbf0e3fe-34d4-480a-b30a-43f958c06ff9">240</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Prepaid and other assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTgtMS0xLTEtMA_f35e1533-a18f-4259-98c0-86ab10b834ac">4</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTgtMy0xLTEtMA_17fdc3a4-9952-4753-8acf-4bd0932a286b">53</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Accounts payable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTktMS0xLTEtMA_28179b70-2e98-4a56-aed8-cb658cf2f1a9">951</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTktMy0xLTEtMA_9f0e6b2e-7700-44cc-8e33-66c4e0d214b0">152</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Accrued and other liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjAtMS0xLTEtMA_e3fffea7-4a83-4d02-a1ed-da2f18f40998">209</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjAtMy0xLTEtMA_d7271ced-3fb3-427d-b367-ea9fd659926f">222</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Deferred revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:IncreaseDecreaseInDeferredRevenue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjEtMS0xLTEtMA_b12967cc-74d2-4bfd-b1a4-6cc84a602535">1</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInDeferredRevenue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjEtMy0xLTEtMA_e3aa2068-9a0d-4874-abab-985f5066ed9e">14</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 43.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Total adjustments</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjItMS0xLTEtMA_637820bf-7483-4ac0-b4fb-a90128b19541">1,141</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjItMy0xLTEtMA_44e4c83a-3369-4945-a9f2-ad9ca8b18865">1,045</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 55pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Net cash (used in) provided by operating activities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjMtMS0xLTEtOTY0_1a24aeb3-b06d-43da-ad24-316b5c22b938">2,783</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjMtMy0xLTEtOTY0_938037a6-0a7e-4ca4-a5f5-c05404e67782">504</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Cash flows from investing activities:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Acquisitions of property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjUtMS0xLTEtMA_8145f27f-db88-4c87-b4a6-58e19a026e02">109</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjUtMy0xLTEtMA_c3a054cb-679b-4f03-97fe-af852da653a5">47</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 18.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Net cash used in investing activities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjctMS0xLTEtMA_df802876-dbaa-436d-b679-66551cf85944">109</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjctMy0xLTEtMA_4ddc0bb0-daff-40ef-a836-039ac10553e9">47</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-style:italic;font-weight:400;line-height:120%">(continued on next page)</span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">9</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CONDENSED</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CONSOLIDATED STATEMENTS OF</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">CASH FLOWS</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-style:italic;font-weight:700;line-height:120%">(in thousands)</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:79.230%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.359%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.361%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Cash flows from financing activities (Sources / (Uses) of cash):</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Proceeds from the issuance of common stock and warrants</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:zerodash" name="efoi:ProceedsFromIssuanceOfCommonStockAndWarrants" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMS0xLTEtMS05MzU_ea842701-f00c-42bb-b1a8-67981ad8fd80">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="efoi:ProceedsFromIssuanceOfCommonStockAndWarrants" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMS0zLTEtMS05MzU_3e8932aa-e377-458d-a283-dd9132322b1f">2,750</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Proceeds from the exercise of warrants</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:ProceedsFromWarrantExercises" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMi0xLTEtMS05MzU_c5217cd1-c5bf-462f-860c-b01fd7eb2850">527</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:zerodash" name="us-gaap:ProceedsFromWarrantExercises" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMi0zLTEtMS05MzU_57ef1ffe-3e82-459b-81e1-f0bacf54d4fa">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Offering costs paid on the issuance of common stock and warrants</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:PaymentsOfStockIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMy0xLTEtMS05MzU_0889a523-b967-4d8a-b481-433e6b0331e2">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:PaymentsOfStockIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMy0zLTEtMS05MzU_a91b129d-51e0-49b5-92c3-9ebf84b13208">474</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Principal payments under finance lease obligations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfNS0xLTEtMS05MzU_8276aa20-236d-41d3-83d4-6b9233b0ae38">1</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfNS0zLTEtMS05MzU_8b3c07cb-9d82-4834-a0bd-6a87f497c451">1</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Common stock withheld in lieu of income tax withholding on vesting of restricted stock units</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfNy0xLTEtMS05MzU_650edbc8-8a76-4d08-ac14-e031db907f6d">2</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:zerodash" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfNy0zLTEtMS05MzU_bf22fe22-f02f-4f26-9071-79e063434593">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Payments on the Iliad Note</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:RepaymentsOfNotesPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTAtMS0xLTEtOTM1_465ad64a-de19-4479-bd4a-c22b7b4e123c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:RepaymentsOfNotesPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTAtMy0xLTEtOTM1_46ccf743-76d0-4292-8699-2330cc542fc9">226</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Net proceeds from credit line borrowings - AFS</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2445ac12b79b4fe9ae5212c144262d44_D20210101-20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:ProceedsFromRepaymentsOfLinesOfCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTMtMS0xLTEtOTM1_cfbfda1b-ac57-444d-94af-feac597880f0">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iff3ff954adda4095a804e4cfb5194d74_D20200101-20200331" decimals="-3" name="us-gaap:ProceedsFromRepaymentsOfLinesOfCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTMtMy0xLTEtOTM1_3445a5ae-8d27-46e7-8148-4791369e2dee">55</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Net proceeds from credit line borrowings - Credit Facilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1249020da8174efcb6c1b1321d81b702_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromRepaymentsOfLinesOfCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTQtMS0xLTEtOTM1_6e2ddbb3-85e7-47d9-9940-e7b7c354cbe0">1,080</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4a74a32957d4c4a85349e233b9e36d9_D20200101-20200331" decimals="-3" format="ixt:zerodash" name="us-gaap:ProceedsFromRepaymentsOfLinesOfCredit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTQtMy0xLTEtOTM1_39cc3210-01bd-49af-a605-18e7c756554e">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Net cash provided by financing activities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTUtMS0xLTEtOTM1_62ed9cc8-eb7c-45db-808e-73a406f403de">1,604</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTUtMy0xLTEtOTM1_61fc3616-2800-4fa2-b8e1-b26170dc712a">2,104</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt 0 12.25pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Net (decrease) increase in cash and restricted cash</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTktMS0xLTEtOTM1_fc52a9b1-a448-42d3-a54d-eb4cfc4b2820">1,288</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTktMy0xLTEtOTM1_801aa984-5be2-4a99-ae9b-e90d58cdd6ac">2,561</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Cash and restricted cash, beginning of period</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjAtMS0xLTEtOTkx_406c2a4a-7d2b-4b57-87c4-5da7bc6746e4">2,178</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia14618e080534548a2781f9ad7ec8f84_I20191231" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjAtMy0xLTEtOTkx_6e6d2ea4-ddb4-4fd8-8e87-46aeb9657a13">692</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 18.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Cash and restricted cash, end of period</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjEtMS0xLTEtOTkx_bf091978-8ae0-4cd7-abf7-d90950199ab3">890</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjEtMy0xLTEtOTkx_09f1d0ed-7e04-4852-a1e0-e033cfef763a">3,253</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt 0 12.25pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Classification of cash and restricted cash:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjQtMS0xLTEtOTM1_52c58bee-3091-4edd-98e6-cbc274aff340">548</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjQtMy0xLTEtOTM1_87f952ae-c35d-420e-b6ca-b4d101c34ac3">2,911</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted cash held in other assets</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:RestrictedCash" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjUtMS0xLTEtOTk2_53522994-8df2-44a2-a374-ebb7c25fafae">342</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331" decimals="-3" name="us-gaap:RestrictedCash" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjUtMy0xLTEtOTk2_bf34e6d9-7934-448a-a115-cfee1d0cc14e">342</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:700;line-height:100%">Cash and restricted cash</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjYtMS0xLTEtOTk2_3fb7311f-9c45-4762-a9c6-28fa5f048448">890</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%">$</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjYtMy0xLTEtOTk2_400083bc-d941-4f09-ac34-8c5914c48a96">3,253</ix:nonFraction>&#160;</span></td><td style="border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these condensed consolidated financial statements.</span></div><div style="text-align:center;text-indent:9pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">10</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_37"></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><div style="text-align:center"><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_40"></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 1. <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:NatureOfOperations" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80MC9mcmFnOjIyZTM4MDZkODhhYTQ3NWI5OGQ0NmNjZjBjMmI0OTM5L3RleHRyZWdpb246MjJlMzgwNmQ4OGFhNDc1Yjk4ZDQ2Y2NmMGMyYjQ5MzlfMjY1OQ_daf1613e-fefa-4ad9-8151-e3a91d89f9d0" continuedAt="ib0ff3f3b99034bec8cc631e7bb7c2cd1" escape="true">NATURE OF</ix:nonNumeric></span><ix:continuation id="ib0ff3f3b99034bec8cc631e7bb7c2cd1" continuedAt="ic36e209b869f4e76b75348705384d1fa"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">OPERATIONS</span></ix:continuation></div><div><span><br/></span></div><ix:continuation id="ic36e209b869f4e76b75348705384d1fa"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Energy Focus, Inc. engages primarily in the design, development, manufacturing, marketing and sale of energy-efficient lighting systems and controls and recently announced development of ultraviolet-C light disinfection (&#8220;UVCD&#8221;) products. We develop, market and sell high quality light-emitting diode (&#8220;LED&#8221;) lighting products and UVCD products and controls in the commercial market and military maritime market (&#8220;MMM&#8221;). Our mission is to enable our customers to run their facilities and offices with greater energy efficiency, productivity, and human health through advanced LED retrofit and UVCD solutions. Our goal is to be the LED and human-centric lighting (&#8220;HCL&#8221;) technology and market leader for the most demanding applications where performance, quality, value (high quality at an affordable price), environmental impact and health are considered paramount. We specialize in LED lighting retrofit by replacing fluorescent, high-intensity discharge lighting and other types of lamps in institutional buildings for primarily indoor lighting applications with our innovative, high-quality commercial and military tubular LED (&#8220;TLED&#8221;), as well as other LED and lighting control products. On October 14, 2020, we also announced the launch of our UVCD product portfolio which is being brought to market in 2021.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On June 11, 2020, in accordance with previous stockholder approval, our Board of Directors effected a 1-for-5 (the &#8220;Split Ratio&#8221;) reverse stock split of the Company&#8217;s common stock, par value $<ix:nonFraction unitRef="usdPerShare" contextRef="i66985daeedc64cd7ab86f489ac45819c_I20200611" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80MC9mcmFnOjIyZTM4MDZkODhhYTQ3NWI5OGQ0NmNjZjBjMmI0OTM5L3RleHRyZWdpb246MjJlMzgwNmQ4OGFhNDc1Yjk4ZDQ2Y2NmMGMyYjQ5MzlfMTA5OTUxMTYzNzA2MQ_c78535c0-ffa3-4b52-a19b-61af4e2ce49c">0.0001</ix:nonFraction> per share. The reverse stock split became effective immediately upon the filing of the Certificate of Amendment to the Company&#8217;s Certificate of Incorporation, as amended (the &#8220;Certificate of Incorporation&#8221;), with the Delaware Secretary of State (the &#8220;Effective Time&#8221;). At the Effective Time, every five shares of common stock issued and outstanding automatically combined into one validly issued, fully paid and non-assessable share of common stock. No fractional shares were issued as a result of the reverse stock split. The $<ix:nonFraction unitRef="usdPerShare" contextRef="i66985daeedc64cd7ab86f489ac45819c_I20200611" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80MC9mcmFnOjIyZTM4MDZkODhhYTQ3NWI5OGQ0NmNjZjBjMmI0OTM5L3RleHRyZWdpb246MjJlMzgwNmQ4OGFhNDc1Yjk4ZDQ2Y2NmMGMyYjQ5MzlfMTA5OTUxMTYzNzA2NQ_c78535c0-ffa3-4b52-a19b-61af4e2ce49c">0.0001</ix:nonFraction> par value per share of common stock and other terms of the common stock were not affected by the reverse stock split. The number of authorized shares of common stock under the Certificate of Incorporation remained unchanged at <ix:nonFraction unitRef="shares" contextRef="i66985daeedc64cd7ab86f489ac45819c_I20200611" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80MC9mcmFnOjIyZTM4MDZkODhhYTQ3NWI5OGQ0NmNjZjBjMmI0OTM5L3RleHRyZWdpb246MjJlMzgwNmQ4OGFhNDc1Yjk4ZDQ2Y2NmMGMyYjQ5MzlfMTA5OTUxMTYzNzA2OQ_359bb833-1538-48f3-9605-47dddb504b48">50,000,000</ix:nonFraction> shares. Proportional adjustments were made to the conversion and exercise prices of our outstanding warrants and stock options, and to the number of shares issued and issuable under our stock incentive plans in connection with the reverse stock split. The information presented in the financial statements for all prior periods have been retroactively adjusted to reflect the reverse stock split. Preferred shares outstanding were not affected by the reverse stock split and, as such, those shares have not been adjusted.</span></div></ix:continuation><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_46"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 2.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0ODQ_2affd707-b940-4d78-8984-b0eda7a39f1e" continuedAt="iebdd9596c82b4ddf9d9f7dba4a8c6a47" escape="true"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">BASIS OF PRESENTATION AND</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</span></ix:nonNumeric></div><div><span><br/></span></div><ix:continuation id="iebdd9596c82b4ddf9d9f7dba4a8c6a47" continuedAt="if348a4736e8347aab3a77343fdfcbd5b"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0NTU_e6e174d8-9b13-4b90-8970-595288d0de62" escape="true"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis of presentation</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The significant accounting policies of our Company, which are summarized below, are consistent with accounting principles generally accepted in the United States (&#8220;U.S. GAAP&#8221;) and reflect practices appropriate to the business in which we operate. Unless indicated otherwise, the information in the Notes to the Consolidated Financial Statements relates to our operations.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have prepared the accompanying financial data for the three months ended March&#160;31, 2021 and 2020 pursuant to the rules and regulations of the United States Securities and Exchange Commission. Certain information and footnote disclosures normally included in financial statements prepared in accordance with U.S. GAAP have been condensed or omitted pursuant to such rules and regulations. The accompanying financial data and information should be read in conjunction with our Annual Report on Form 10-K for the year ended December&#160;31, 2020 (&#8220;2020 Annual Report&#8221;). The Condensed Consolidated Balance Sheet as of December&#160;31, 2020 has been derived from the audited consolidated financial statements at that date but does not include all of the information and footnotes required by U.S. GAAP for complete financial statements.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the opinion of management, the accompanying condensed consolidated financial statements contain all normal and recurring adjustments necessary to present fairly our Condensed Consolidated Balance Sheets as of March&#160;31, 2021 and December&#160;31, 2020, Condensed Consolidated Statements of Operations for the three months ended March&#160;31, 2021 and 2020, Condensed Consolidated Statements of Comprehensive Loss for the three months ended March&#160;31, 2021 and 2020, Condensed Consolidated Statements of Changes in Stockholders&#8217; Equity for the three months ended March&#160;31, 2021 and 2020, and Condensed Consolidated Statements of Cash Flows for the three months ended March&#160;31, 2021 and 2020.</span></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">11</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="if348a4736e8347aab3a77343fdfcbd5b" continuedAt="idc85bf3154b34e0aa8f7fd5c08e7a0e2"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:UseOfEstimates" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0NTY_45e5cd2c-2497-4cb9-b3ba-8754b3e3c101" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Use of estimates</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of financial statements in accordance with U.S. GAAP requires management to make estimates and assumptions that affect the amounts reported in our financial statements and accompanying notes. Management bases its estimates on historical experience and various other assumptions believed to be reasonable. Although these estimates are based on management&#8217;s best knowledge of current events and actions that may impact us in the future, actual results may vary from the estimates. Estimates include, but are not limited to, the establishment of reserves for accounts receivable, sales returns, inventory obsolescence and warranty claims; the useful lives of property and equipment; valuation allowance for net deferred taxes; the cost and offsetting income related to sub-leased property; and stock-based compensation. In addition, estimates and assumptions associated with the determination of the fair value of financial instruments and evaluation of long-lived assets for impairment requires considerable judgment. Actual results could differ from those estimates and such differences could be material.</span></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:ConcentrationRiskCreditRisk" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM0Mw_bc5d26f1-8509-4bda-8d79-722e328dad1f" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Certain risks and concentrations</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have certain customers whose net sales individually represented <ix:nonFraction unitRef="number" contextRef="i4ac3ca3389b54e11881bc600bc76e5c1_D20210101-20210331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzE0NA_0087fabf-8458-4af4-9791-8b1d3af8314e">10</ix:nonFraction>% or more of our total net sales, or whose net trade accounts receivable balance individually represented <ix:nonFraction unitRef="number" contextRef="i4ac3ca3389b54e11881bc600bc76e5c1_D20210101-20210331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI1MQ_ee6148bf-8fa7-43ad-85d3-3c55a13e24b7">10</ix:nonFraction>% or more of our total net trade accounts receivable; we have certain suppliers, which individually represent <ix:nonFraction unitRef="number" contextRef="i4ac3ca3389b54e11881bc600bc76e5c1_D20210101-20210331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzM2Mg_ee6148bf-8fa7-43ad-85d3-3c55a13e24b7">10</ix:nonFraction>% or more of our total purchases, or whose trade accounts payable balance individually represented <ix:nonFraction unitRef="number" contextRef="i4ac3ca3389b54e11881bc600bc76e5c1_D20210101-20210331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzQ2Mg_ee6148bf-8fa7-43ad-85d3-3c55a13e24b7">10</ix:nonFraction>% or more of our total trade accounts payable balance, as follows:</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March 31, 2021, sales to our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately <ix:nonFraction unitRef="number" contextRef="if5f69b88c1e94812b8d32051e6bf5bad_D20210101-20210331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzY3NA_a04a648e-38d6-478e-979a-db436b532858">50</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i8fd89665f12e4c79be1f16a4975db0e9_D20210101-20210331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzY4MQ_e15adaa6-1b10-4aa7-a9cf-2301f3e2e04a">11</ix:nonFraction>% of net sales, respectively. When sales to our primary distributor for the U.S. Navy are combined with sales to shipbuilders for the U.S. Navy, total net sales of products for the U.S. Navy comprised approximately <ix:nonFraction unitRef="number" contextRef="i016aca80ed34490fb5902c84d4cdb20c_D20210101-20210331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzg5Nw_81fc217a-a946-40a7-951d-a12330cbd745">57</ix:nonFraction>% of net sales for the same period. For the three months ended March 31, 2020, sales to our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately <ix:nonFraction unitRef="number" contextRef="ide94a6dc06b94121b00d007ae8029a9c_D20200101-20200331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfNDEwNw_9fbad538-dd51-463d-9618-18fee93ef48c">38</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i98413ba4172f400fb13a4e55b3dd9ece_D20200101-20200331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfNDExMQ_4e3a37a5-2840-4332-b888-dadfc60b75e6">15</ix:nonFraction>% of net sales, respectively. When sales to our primary distributor for the U.S. Navy are combined with sales to shipbuilders for the U.S. Navy, total net sales of products for the U.S. Navy comprised approximately <ix:nonFraction unitRef="number" contextRef="ic0084796b5f94e29804958a4753bf87d_D20200101-20200331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM2NQ_11aa29df-cd47-44b1-a970-73a100ba2022">46</ix:nonFraction>% of net sales for the same period.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately <ix:nonFraction unitRef="number" contextRef="i9b8c850c315e4629b561719f49269baa_D20210101-20210331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfNTI1Mg_79a03a7a-7a95-47b3-9b52-27fe14eb78df">45</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i404f93dec6d14c99986fb1a63ef2adaf_D20210101-20210331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY2NDM1Nw_417a0e09-51f9-438e-a870-b7490bba80bd">16</ix:nonFraction>% of net trade accounts receivable, respectively, at March&#160;31, 2021. At December 31, 2020, our primary distributor to the U.S. Navy accounted for <ix:nonFraction unitRef="number" contextRef="i027584a13e074a8b955c05d56697a12d_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM1NQ_c21deb7f-5426-4c36-97df-39e394e96541">28</ix:nonFraction>% of our net trade accounts receivable and a shipbuilder for the U.S. Navy accounted for <ix:nonFraction unitRef="number" contextRef="i24390d1b839c498da16d408831cd0cdb_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM2MA_2395a0f0-b240-4fea-8ca7-3a01f5a3a2e7">21</ix:nonFraction>% of our net trade accounts receivable. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">One offshore supplier accounted for approximately <ix:nonFraction unitRef="number" contextRef="i31b6c2c6322246a4beda0a0731370684_D20210101-20210331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY2NDYwOQ_cc5bbcc6-0e63-4831-8ff6-88b9c6dfdd74">26</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i339a38526a964beca9f1eb7f0d7d7f75_D20200101-20200331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY2NDYyMA_6e5c8a53-e468-4310-a48a-d7be09ff03e9">22</ix:nonFraction>%, respectively, of our total expenditures for the three months ended March 31, 2021 and March&#160;31, 2020. At March&#160;31, 2021, this same offshore supplier and one domestic supplier accounted for approximately <ix:nonFraction unitRef="number" contextRef="i141e4c5e274f4baa94b6e62a525c3b7c_D20210101-20210331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY2NDQ1OQ_ca907fdb-3e88-4bfa-aa3b-293be76e2b9a">39</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i8d004affba704c7ca37fa06e3ba8892f_D20210101-20210331" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY2NDQ2NQ_6c3be0ca-7335-4aa5-b9e7-e3d8646b1492">10</ix:nonFraction>% of our trade accounts payable balance, respectively. At December 31, 2020 this same offshore supplier accounted for approximately <ix:nonFraction unitRef="number" contextRef="ie020b072c1514c4ea7ff082dae9ba76f_D20200101-20201231" decimals="2" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM1MA_b472e83d-9ccc-434b-834b-faaeb9733979">44</ix:nonFraction>% of our trade accounts payable balance.</span></div></ix:nonNumeric><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0Njc_a8276037-3ab8-4310-9392-6ae4114b1705" continuedAt="i1eb736fe9948446f8e82410370499cec" escape="true">Recent accounting pronouncements</ix:nonNumeric></span></div><div><span><br/></span></div><div><ix:continuation id="i1eb736fe9948446f8e82410370499cec" continuedAt="if47a7dc44c9645dcbeb3047e781fdd44"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2016, the Financial Accounting Standards Board issued Accounting Standard Update No. 2016-13, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments</span></ix:continuation><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="if47a7dc44c9645dcbeb3047e781fdd44">, which significantly changes the accounting for credit losses on instruments within its scope. The new guidance introduces an approach based on expected losses to estimate credit losses on certain financial instruments, including trade receivables, and requires an entity to recognize an allowance based on its estimate of expected credit losses rather than incurred losses. For smaller reporting companies, this standard will be effective for interim and annual periods starting after December 15, 2022 and will generally require adoption on a modified retrospective basis. We are in the process of evaluating the impact of the standard.</ix:continuation> </span></div><div><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:RevenueRecognitionPolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0ODk_2ee229ad-ca47-40ac-a195-56d915c3be51" continuedAt="i19ff82619c5c4cf1b782339e774f57af" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Revenue</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales include revenues from sales of products and shipping and handling charges, net of estimates for product returns. Revenue is measured at the amount of consideration we expect to receive in exchange for the transferred products. We recognize revenue at the point in time when we transfer the promised products to the customer and the customer obtains control over the products. Distributors&#8217; obligations to us are not contingent upon the resale of our products. We recognize revenue for shipping and handling charges at the time the goods are shipped to the customer, and the costs of outbound </span></div></ix:nonNumeric></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">12</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="idc85bf3154b34e0aa8f7fd5c08e7a0e2" continuedAt="i95b7db1e3c6f431e8bfe279012f07ed1"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i19ff82619c5c4cf1b782339e774f57af">freight are included in cost of sales. We provide for product returns based on historical return rates. While we incur costs for sales commissions to our sales employees and outside agents, we recognize commission costs concurrent with the related revenue, as the amortization period is less than one year. We do not incur any other incremental costs to obtain contracts with our customers. Our product warranties are assurance-type warranties, which promise the customer that the products are as specified in the contract. Therefore, the product warranties are not a separate performance obligation and are accounted for as described below. Sales taxes assessed by governmental authorities are accounted for on a net basis and are excluded from net sales.</ix:continuation></span></div><div><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0NDY_0c3370a3-4716-44b1-9dc2-7e5efbf16a62" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides a disaggregation of product net sales for the periods presented (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:73.975%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.912%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.063%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i18a690ed9a9a41458d0feffe21f8dcca_D20210101-20210331" decimals="-3" name="us-gaap:Revenues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmQzZmZlZWE3NjdhMzQ2ZTk5YmE2NDA0YzM0NTJmMTRmL3RhYmxlcmFuZ2U6ZDNmZmVlYTc2N2EzNDZlOTliYTY0MDRjMzQ1MmYxNGZfMy0xLTEtMS0w_0da2d24f-45c4-4a6a-b843-90a41cb62189">913</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ic4682245caf84f909e5aa693dcb86844_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmQzZmZlZWE3NjdhMzQ2ZTk5YmE2NDA0YzM0NTJmMTRmL3RhYmxlcmFuZ2U6ZDNmZmVlYTc2N2EzNDZlOTliYTY0MDRjMzQ1MmYxNGZfMy0zLTEtMS0w_20465bf4-f09c-4420-8c0d-feb93d6fff29">1,736</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MMM products</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9610cf42043f41e5b8ebba87cec3b68e_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmQzZmZlZWE3NjdhMzQ2ZTk5YmE2NDA0YzM0NTJmMTRmL3RhYmxlcmFuZ2U6ZDNmZmVlYTc2N2EzNDZlOTliYTY0MDRjMzQ1MmYxNGZfNC0xLTEtMS0w_f85e933a-d5a2-452a-b766-88c12b1d2e1b">1,724</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iea035adca85b40d38d1857cd4a7d3ddd_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmQzZmZlZWE3NjdhMzQ2ZTk5YmE2NDA0YzM0NTJmMTRmL3RhYmxlcmFuZ2U6ZDNmZmVlYTc2N2EzNDZlOTliYTY0MDRjMzQ1MmYxNGZfNC0zLTEtMS0w_fa223077-ce72-4c05-8065-8e9bc2e3b66a">2,047</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total net sales</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmQzZmZlZWE3NjdhMzQ2ZTk5YmE2NDA0YzM0NTJmMTRmL3RhYmxlcmFuZ2U6ZDNmZmVlYTc2N2EzNDZlOTliYTY0MDRjMzQ1MmYxNGZfNS0xLTEtMS0w_18e6e468-7200-43c4-9ff8-35bb38d74ae0">2,637</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Revenues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmQzZmZlZWE3NjdhMzQ2ZTk5YmE2NDA0YzM0NTJmMTRmL3RhYmxlcmFuZ2U6ZDNmZmVlYTc2N2EzNDZlOTliYTY0MDRjMzQ1MmYxNGZfNS0zLTEtMS0w_304e114d-11ea-4891-aa38-fd161bfe663a">3,783</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0NjI_8afdd5de-de38-4be3-8699-5bf3ee600fe2" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Accounts Receivable</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our trade accounts receivable consist of amounts billed to and currently due from customers. Our customers are currently concentrated in the United States. In the normal course of business, we extend unsecured credit to our customers related to the sale of our products. Credit is extended to customers based on an evaluation of the customer&#8217;s financial condition and the amounts due are stated at their estimated net realizable value. We utilize an account receivable insurance program with a high credit worthy insurance company where we have the large majority of the accounts receivable insured with a portion of self-retention. This third party also provides creditworthiness ratings and metrics that significantly assist us in evaluating the creditworthiness of both existing and new customers. We maintain allowances for sales returns and doubtful accounts receivable to provide for the estimated number of accounts receivable that will not be collected. The allowance is based on an assessment of customer creditworthiness and historical payment experience, the age of outstanding receivables, and performance guarantees to the extent applicable. Past due amounts are written off when our internal collection efforts have been unsuccessful, and payments subsequently received on such receivables are credited to the allowance for doubtful accounts. We do not generally require collateral from our customers.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our standard payment terms with customers are net 30 days from the date of shipment, and we do not generally offer extended payment terms to our customers, but exceptions are made in some cases to certain customers or with particular orders. Accordingly, we do not adjust trade accounts receivable for the effects of financing, as we expect the period between the transfer of product to the customer and the receipt of payment from the customer to be in line with our standard payment terms.</span></div></ix:nonNumeric><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Geographic information</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All of our long-lived fixed assets are located in the United States. Sales attributable to customers outside the United States for both the three months ended March 31, 2021, and three months ended March 31, 2020, were less than <ix:nonFraction unitRef="number" contextRef="i01bd9c8c1eaf40bc95a4831475c6065c_D20200101-20200331" decimals="INF" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA4NTQ_6c1fc24d-36fd-4393-b009-7b81284dfb79"><ix:nonFraction unitRef="number" contextRef="if4463cd7b06c441198a42045a52ce68c_D20210101-20210331" decimals="INF" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA4NTQ_a7f17b50-6c21-42bc-b20d-8d45162a3ee5">1</ix:nonFraction></ix:nonFraction>%. The geographic location of our net sales is derived from the destination to which we ship the product.</span></div><div><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:EarningsPerSharePolicyTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg1MDM_a8f5caef-edc4-4fac-849c-1e200f3b5263" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Net loss per share </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic loss per share is computed by dividing net loss available to common stockholders by the weighted average number of shares of common stock outstanding during the period, excluding the effects of any potentially dilutive securities. Diluted loss per share gives effect to all dilutive potential shares of common stock outstanding during the period. Dilutive potential shares of common stock consist of incremental shares upon the exercise of stock options, warrants and convertible securities, unless the effect would be anti-dilutive.</span></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">13</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="i95b7db1e3c6f431e8bfe279012f07ed1" continuedAt="i0780f0b72adf47289623eb8c5bd832bd"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0OTk_79d032d3-7c09-4cb8-b082-c6c43ba70f98" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The following table presents a reconciliation of basic and diluted loss per share computations (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.597%"><tr><td style="width:1.0%"></td><td style="width:73.515%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.053%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.876%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.056%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Numerator:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjczYmM2NjY3NmJiZjRiOGI5NWI2NWU5OTAxZmJmOWFiL3RhYmxlcmFuZ2U6NzNiYzY2Njc2YmJmNGI4Yjk1YjY1ZTk5MDFmYmY5YWJfMy0xLTEtMS0w_5ba9cb4d-28f0-45c2-8e9c-91686da9752b">1,642</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjczYmM2NjY3NmJiZjRiOGI5NWI2NWU5OTAxZmJmOWFiL3RhYmxlcmFuZ2U6NzNiYzY2Njc2YmJmNGI4Yjk1YjY1ZTk5MDFmYmY5YWJfMy0zLTEtMS0w_16aa4b76-c0fe-40de-8ae1-445de93fe5f6">541</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Denominator:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted average shares of common stock outstanding *</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjczYmM2NjY3NmJiZjRiOGI5NWI2NWU5OTAxZmJmOWFiL3RhYmxlcmFuZ2U6NzNiYzY2Njc2YmJmNGI4Yjk1YjY1ZTk5MDFmYmY5YWJfNi0xLTEtMS0w_3cbaaf9f-322d-4c88-83fe-3532bbaf5493">3,612</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjczYmM2NjY3NmJiZjRiOGI5NWI2NWU5OTAxZmJmOWFiL3RhYmxlcmFuZ2U6NzNiYzY2Njc2YmJmNGI4Yjk1YjY1ZTk5MDFmYmY5YWJfNi0zLTEtMS0w_9fc7a6d2-29ce-460a-8579-8a355d074894">3,086</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="12" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;&#160;* Shares outstanding for prior periods have been restated for the 1-for-5 stock split effective June 11, 2020.</span></div></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the net loss we incurred for the three months ended March 31, 2021, options, restricted share units, warrants and convertible securities representing approximately <ix:nonFraction unitRef="shares" contextRef="i23f283c771fb442cbcbc4e3518a209e7_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTE3OTg_b6627c13-ec25-4cd3-a7a1-66a3dde6ea30">79</ix:nonFraction>&#160;thousand, <ix:nonFraction unitRef="shares" contextRef="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTE4MDI_89afcc0a-68e4-4446-9995-9af9197abf56">2</ix:nonFraction>&#160;thousand, <ix:nonFraction unitRef="shares" contextRef="i07e159ff53c64c0c9211a8bafd5d974c_D20210101-20210331" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTE4MDY_c63d2873-1309-4c2b-ae11-d438aa27e761">106</ix:nonFraction>&#160;thousand and <ix:nonFraction unitRef="shares" contextRef="id654613ac3e14a678d4ce7ce503bdd1c_D20210101-20210331" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTE4MTM_84b05f7c-1663-4195-ab31-6fe7db9b7dea">519</ix:nonFraction>&#160;thousand shares of common stock, respectively, were excluded from the basic loss per share calculation, because their inclusion would have been anti-dilutive.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the net loss we incurred for the three months ended March 31, 2020, options and restricted share units representing approximately <ix:nonFraction unitRef="shares" contextRef="i26a92c18c3f5476183cd1d14b1c8017b_D20200101-20200331" decimals="-2" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTIzNzI_f8103a8c-dee8-42bb-8efd-4ef09935d28e">0.3</ix:nonFraction>&#160;thousand and <ix:nonFraction unitRef="shares" contextRef="i8dce9257f3f24cc597b70575ad006ab1_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MTQzNA_d4c2b7b7-c888-4a6e-8af4-1a11c469a186">1</ix:nonFraction>&#160;thousand shares of common stock, respectively, and convertible securities representing approximately <ix:nonFraction unitRef="shares" contextRef="i156a82c4ce954d63bb4ce38aba1d7b32_D20200101-20200331" decimals="0" format="ixt:numdotdecimal" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTI0Njc_fef7b065-87f9-4bb3-9945-775d96f34f4b">452</ix:nonFraction>&#160;thousand shares of common stock were excluded from the basic loss per share calculation as their inclusion would have been anti-dilutive. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:StandardProductWarrantyPolicy" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0MzQ_436fc808-f243-4c6a-adf8-8088ea66f850" continuedAt="i05c3b0ec8d7c4d9d85519b30846ed545" escape="true">Product warranties</ix:nonNumeric></span></div><div><span><br/></span></div><div><ix:continuation id="i05c3b0ec8d7c4d9d85519b30846ed545" continuedAt="ie9eec1c4951049d7a00ac67ac59024fd"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Through March&#160;31, 2016, we warranted finished goods against defects in material and workmanship under normal use and service for periods generally between <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDA0OQ_e66bff4c-194e-44bc-a3ef-eb779268857d">one</span> and <ix:nonNumeric contextRef="i254d386828124dd682d8335070f16083_D20160101-20160331" format="ixt-sec:durwordsen" name="efoi:StandardProductWarrantyNumberofYears" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDA1Nw_131a740a-f556-4f62-8cec-96c659fc5fb4">five years</ix:nonNumeric>. Beginning April&#160;1, 2016, we warrant our commercial TLEDs, the troffer luminaires, and certain Globe Lights for a period of <ix:nonNumeric contextRef="ia0662236cd9941438e3fb2c0b78a0713_D20160401-20210331" format="ixt-sec:durwordsen" name="efoi:StandardProductWarrantyNumberofYears" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDE3NQ_6a95410f-2a17-4b49-896e-b8b2e80a25a8">ten years</ix:nonNumeric> (excluding RedCap</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7.8pt;font-style:italic;font-weight:400;line-height:120%;position:relative;top:-4.2pt;vertical-align:baseline">&#174;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and our Battery Backup TLEDs), and all other LED products for <ix:nonNumeric contextRef="i51e6dde065b142a79d23bc3955353ce9_D20160401-20210331" format="ixt-sec:durwordsen" name="efoi:StandardProductWarrantyNumberofYears" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDI2MA_62ffc523-d01f-4f45-ac8e-a0c11f1c09f5">five years</ix:nonNumeric> per the Terms and Conditions outlined on our website. Beginning in October 2019, TLEDs (excluding RedCap</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">&#174;</span></ix:continuation><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ie9eec1c4951049d7a00ac67ac59024fd">) are primarily warranted for <ix:nonNumeric contextRef="icd6f5ef38d7b497a9145ce075a0725c3_D20191001-20210331" format="ixt-sec:durwordsen" name="efoi:StandardProductWarrantyNumberofYears" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDM5OQ_cbfd2c11-c120-4f03-9272-0a8f14ac948a">ten years</ix:nonNumeric>, certain D-Series lamps are warranted for either <ix:nonNumeric contextRef="i8e50ea1232c74a3a8dc19a60549d605f_D20191001-20210331" format="ixt-sec:durwordsen" name="efoi:StandardProductWarrantyNumberofYears" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDQ1Mg_34d9fe17-0ea7-4592-bd9d-4cd8db374133">ten years</ix:nonNumeric> or <ix:nonNumeric contextRef="i1295814c41ea47abb4b46801e022a13b_D20191001-20210331" format="ixt-sec:durwordsen" name="efoi:StandardProductWarrantyNumberofYears" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDQ1OQ_58cc31f4-1d50-4466-816b-47e4643f81da">five years</ix:nonNumeric> based on the customer&#8217;s choice at time of purchase, and the warranty for all of our other products is <ix:nonNumeric contextRef="i23ab18c4dc8e48cf805f19a0b7845a7e_D20191001-20210331" format="ixt-sec:durwordsen" name="efoi:StandardProductWarrantyNumberofYears" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDU2NQ_02a82b62-75bc-40af-938c-4fdfe9b05d5c">five years</ix:nonNumeric>. Warranty settlement costs consist of actual amounts expensed for warranty, which are largely a result of the cost of replacement products provided to our customers. A liability for the estimated future costs under product warranties is maintained for products under warranty based on the actual claims incurred to date and the estimated nature, frequency, and costs of future claims. These estimates are inherently uncertain and changes to our historical or projected experience may cause material changes to our warranty reserves in the future. We continuously review the assumptions related to the adequacy of our warranty reserve, including product failure rates, and make adjustments to the existing warranty liability when there are changes to these estimates or the underlying replacement product costs, or the warranty period expires.</ix:continuation> </span></div><div><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0NjQ_e140c6c4-be2f-4462-9799-107aad051d37" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes warranty activity for the periods presented (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:74.425%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.761%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.764%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at beginning of period</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfMi0xLTEtMS0w_1ea79301-5011-4f40-8b86-c0ae2e6028ee">227</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia14618e080534548a2781f9ad7ec8f84_I20191231" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfMi0zLTEtMS0w_40c48cb7-6cb3-4b01-8f24-56df7584c5ef">195</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Warranty accruals for current period sales</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfMy0xLTEtMS0w_c9f8e9db-51bd-4304-acf8-5273b9bba186">17</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfMy0zLTEtMS0w_16076aab-d8ca-42ed-89dd-33ec8556fb72">7</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustments to existing warranties</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfNC0xLTEtMS0w_8a90ddc1-9820-4374-abb9-5f21d4f28e7b">14</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfNC0zLTEtMS0w_3cfc2a15-9d55-4576-b112-1e0c271e1b10">44</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">In kind settlements made during the period</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfNS0xLTEtMS0w_f56c2c01-b054-4cff-83a3-2597881e2f4a">19</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfNS0zLTEtMS0w_ebb9e6a7-529d-4c6b-8a3c-3a86977d8c53">6</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accrued warranty reserve at end of period</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfNi0xLTEtMS0w_a8fd8fb0-93f1-4ef4-bd01-db5fe92b7173">239</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfNi0zLTEtMS0w_fbd655cf-5368-4f88-9759-ebdec4f766cb">240</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">14</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="i0780f0b72adf47289623eb8c5bd832bd" continuedAt="ia8da3b4bdbd84afb9469fb0653e614e3"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:FairValueOfFinancialInstrumentsPolicy" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM0NA_ce4f60cc-e3c4-46f8-83f1-05c0cfe248a3" continuedAt="ifb1be60fcfd54bad91835f091ca81670" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Financial Instruments</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In January 2020, we completed a registered direct offering for the sale of <ix:nonFraction unitRef="shares" contextRef="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDcxNQ_76495a5d-f9dd-432e-97eb-c92216e92235">688,360</ix:nonFraction> shares of our common stock to certain institutional investors, at a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i80309835f493449a847d541559d6ff1d_I20200131" decimals="2" name="us-gaap:SaleOfStockPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzg0ODI5MDczNDU5Nw_52bb438d-a122-4806-baca-53d5f85f3ac8">3.37</ix:nonFraction> per share. We also sold, to the same institutional investors, warrants to purchase up to <ix:nonFraction unitRef="shares" contextRef="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131" decimals="INF" format="ixt:numdotdecimal" name="efoi:ClassOfWarrantOrRightWarrantsIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTQ3ODA_14449526-8671-460a-8342-85de02dc0983">688,360</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i80309835f493449a847d541559d6ff1d_I20200131" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTQ4MzA_5fea7f6a-4f2e-415b-a0a0-46a58c44b4bf">3.37</ix:nonFraction> per share in a concurrent private placement for a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssuedPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTQ5MDE_e3681874-defe-4788-88d7-f7cfbb8f46d7">0.625</ix:nonFraction> per warrant. We paid the placement agent commissions of $<ix:nonFraction unitRef="usd" contextRef="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131" decimals="-3" format="ixt:numdotdecimal" name="efoi:PaymentsForPlacementAgentCommissions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTQ5NjA_6b6dc465-57a8-4072-b6fa-232e0553f340">193</ix:nonFraction>&#160;thousand plus $<ix:nonFraction unitRef="usd" contextRef="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131" decimals="-3" format="ixt:numdotdecimal" name="efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTQ5Njg_289e5823-dd3f-4790-adca-06e263362ff5">50</ix:nonFraction>&#160;thousand in expenses in connection with the registered direct offering and the concurrent private placement and we also paid legal, accounting and other fees of $<ix:nonFraction unitRef="usd" contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131" decimals="-3" format="ixt:numdotdecimal" name="efoi:PaymentsForClearingFees" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTUxMjM_7ca76c60-ab13-4792-831a-97b9c1f91164">231</ix:nonFraction>&#160;thousand related to the offering. Total offering costs of $<ix:nonFraction unitRef="usd" contextRef="i00eb0670d1e149a2a10c5ce329bb1fa2_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsOfStockIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1NDgwNA_6219d965-8ef4-40ac-9f58-f0ce8512cda9">510</ix:nonFraction>&#160;thousand have been presented as a reduction of additional paid-in capital and have been netted within equity in the Condensed Consolidated Balance Sheet as of December&#160;31, 2020. In addition, we issued warrants to the placement agent to purchase up to <ix:nonFraction unitRef="shares" contextRef="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131" decimals="INF" format="ixt:numdotdecimal" name="efoi:ClassOfWarrantOrRightWarrantsIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU0MjE_60fa2ab7-e9a1-44e8-b6f9-f3b2eaf3090d">48,185</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i3474f10caa984249abced513511bd9c0_I20200131" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU0NzE_d70c0c0d-7bd1-4c56-bfdb-6767aabc32e4">4.99</ix:nonFraction> per share. Net proceeds to us from the sale of common stock and warrants (the &#8220;January 2020 Equity Offering&#8221;) were approximately $<ix:nonFraction unitRef="usd" contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131" decimals="-5" format="ixt:numdotdecimal" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU2MDM_b1c8ee82-1725-4f4b-80b7-6b520d53ed99">2.3</ix:nonFraction> million. In accordance with the terms of the Iliad Note (as defined below in Note 7, &#8220;Debt&#8221;), <ix:nonFraction unitRef="number" contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131" decimals="INF" name="efoi:DebtInstrumentProceedsToBePaidToLenderPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU2OTI_95316db5-aa73-47aa-b3b5-d92e384ec340"><ix:nonFraction unitRef="number" contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131" decimals="INF" name="efoi:DebtInstrumentProceedsToBePaidToLenderPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU2OTI_af756bb9-067e-44d0-aad9-5450870d78a7">10</ix:nonFraction></ix:nonFraction>% of the gross proceeds from the January 2020 Equity Offering ($<ix:nonFraction unitRef="usd" contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOrSaleOfEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU3NTU_e974408e-d05d-4340-8db9-368a4db9a8ab">275</ix:nonFraction>&#160;thousand) were used to make payments on the Iliad Note, of which $<ix:nonFraction unitRef="usd" contextRef="i5b14b389eebc47d5bcc51f2dd4812ce8_D20200101-20200131" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RepaymentsOfNotesPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU4MTQ_d09d255f-39e9-4325-8f36-15ea69271622">226</ix:nonFraction>&#160;thousand went towards the outstanding principal amount and the balance to interest.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Warrants to purchase an aggregate of <ix:nonFraction unitRef="shares" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="INF" format="ixt:numdotdecimal" name="efoi:ClassOfWarrantOrRightWarrantsIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU5MzA_a1b99d71-1a69-4166-a787-a72c2f31c7d3">310,860</ix:nonFraction> shares remain outstanding at March&#160;31, 2021 with a weighted average exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTYwMDc_5e2fb288-9141-4cb1-b6f2-4a30d160a995">3.59</ix:nonFraction> per share. The exercise of warrants could provide us with cash proceeds of up to $<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfWarrants" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTYwOTE_8ecb14c5-7456-4175-94bb-faf759d28b15">1.1</ix:nonFraction> million in the aggregate. During the three months ended March 31, 2021, <ix:nonFraction unitRef="shares" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTYxMjc_5d8f0438-74f8-408b-af09-3fa1e6c31fe2">156,446</ix:nonFraction> warrants were exercised resulting in total proceeds of $<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromWarrantExercises" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTYxODU_c5217cd1-c5bf-462f-860c-b01fd7eb2850">527</ix:nonFraction> thousand. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Due to a potential cash settlement upon occurrence of a fundamental transaction within the warrant agreement, the warrants were initially classified as liabilities, as opposed to equity, and were recorded at their fair values at each balance sheet date for the first three quarters of 2020. During December 2020, the warrant holders agreed to a modification of the terms of their warrants which removed the potential cash settlement option upon the occurrence of a fundamental transaction. As such, during the fourth quarter of 2020, the warrant liability was reclassified into equity and the warrants are no longer subject to re-measurement at each balance sheet date. Please also refer to Note 9, &#8220;Stockholders&#8217; Equity&#8221;.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;text-decoration:underline">Fair Value Measurements</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The fair value hierarchy prioritizes the inputs to valuation techniques used to measure fair value, giving the highest priority to unadjusted quoted prices in active markets for identical assets or liabilities (Level 1 measurements) and the lowest priority to unobservable inputs (Level 3 measurements). The three levels of the fair value hierarchy are described below. We classify the inputs used to measure fair value into the following hierarchy:</span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:8.509%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:89.291%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 1</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Unadjusted quoted prices in active markets for identical assets or liabilities.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 2</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Unadjusted quoted prices in active markets for similar assets or liabilities, or unadjusted quoted prices for identical or similar assets or liabilities in markets that are not active, or inputs other than quoted prices that are observable for the asset or liability.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 3</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Unobservable inputs for the asset or liability.</span></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">15</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="ia8da3b4bdbd84afb9469fb0653e614e3"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM0NQ_71c9fe84-4b9e-43cb-a309-ae892c9a4e92" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The following table provides a summary of the financial assets and liabilities measured at fair value on a recurring basis as of March 31, 2020 (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:20.221%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.912%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.151%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.770%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.151%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.770%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.151%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.774%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements at March&#160;31, 2020 Using</span></div></td></tr><tr style="height:17pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance as of</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets<br/>&#160;(Level 1)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Other Observable Inputs <br/>(Level 2)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs<br/>&#160;(Level 3)</span></td></tr><tr style="height:23pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline">Description</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2020</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Warrant liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"><ix:nonFraction unitRef="usd" contextRef="i4de7feba86f4411e8431d327acf726a6_I20200331" decimals="-3" name="us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmE4MTNlNzcyYTBjNzQ4MDBhNThjZTNlZDNlYzI3OWZiL3RhYmxlcmFuZ2U6YTgxM2U3NzJhMGM3NDgwMGE1OGNlM2VkM2VjMjc5ZmJfMy0xLTEtMS0zMTQ2_b9b6321f-909a-4424-a9c2-0688746b389b">763</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"><ix:nonFraction unitRef="usd" contextRef="i204bf87cc54142adb41b78ecb6f6c2ff_I20200331" decimals="-3" format="ixt:zerodash" name="us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmE4MTNlNzcyYTBjNzQ4MDBhNThjZTNlZDNlYzI3OWZiL3RhYmxlcmFuZ2U6YTgxM2U3NzJhMGM3NDgwMGE1OGNlM2VkM2VjMjc5ZmJfMy0zLTEtMS0zMTQ4_417fe6c3-5dcf-4a5e-b03c-9a8ec0aff2ec">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"><ix:nonFraction unitRef="usd" contextRef="i26193b3fb7204cbba2c9cccc40d0a8bd_I20200331" decimals="-3" format="ixt:zerodash" name="us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmE4MTNlNzcyYTBjNzQ4MDBhNThjZTNlZDNlYzI3OWZiL3RhYmxlcmFuZ2U6YTgxM2U3NzJhMGM3NDgwMGE1OGNlM2VkM2VjMjc5ZmJfMy01LTEtMS0zMTUw_5d27d51d-ecf4-4b06-89a8-c8d00f2aef09">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"><ix:nonFraction unitRef="usd" contextRef="iab487819a6de4c7eab2a54b9565d76f1_I20200331" decimals="-3" name="us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmE4MTNlNzcyYTBjNzQ4MDBhNThjZTNlZDNlYzI3OWZiL3RhYmxlcmFuZ2U6YTgxM2U3NzJhMGM3NDgwMGE1OGNlM2VkM2VjMjc5ZmJfMy03LTEtMS0zMTUy_495d5b2f-c980-4b03-9687-0065acfa11b6">763</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div><span><br/></span></div><ix:continuation id="ifb1be60fcfd54bad91835f091ca81670"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The carrying amounts of certain financial instruments including cash, accounts receivable, accounts payable, and accrued liabilities approximate fair value due to their short maturities. Based on borrowing rates currently available to us for loans with similar terms, the carrying value of borrowings under our revolving credit facilities also approximates fair value.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">A financial instrument&#8217;s level within the fair value hierarchy is based on the lowest level of any input that is significant to the fair value measurement. In determining the appropriate levels, we perform a detailed analysis of the assets and liabilities whose fair value is measured on a recurring basis. We review and reassess the fair value hierarchy classifications on a quarterly basis. Changes from one quarter to the next related to the observability of inputs in a fair value measurement may result in a reclassification between fair value hierarchy levels. There were no reclassifications for all periods presented.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The estimated fair value of warrants accounted for as liabilities, representing a level 3 fair value measure, was determined on the issuance date and subsequently marked to market at each financial reporting date. We use the Black-Scholes valuation model to value the warrant liabilities at fair value. The fair value is estimated using the expected volatility based on our historical volatility and is determined using probability weighted-average assumptions, when appropriate.</span></div></ix:continuation><div><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM0Ng_5a99672a-707d-4942-8a21-91210d0b0200" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The following inputs were used at March 31, 2020:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:42.893%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.866%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.001%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.167%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.001%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.272%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expected</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Risk-Free</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expected</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Volatility</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Interest Rate</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Life</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Warrants with greater than one-year remaining term</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i84aed75aecf64140a55d8201e6975d87_D20200101-20200331" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjg4Yzc2ODM1NTFiNDQ2MzZhNGFiNWM4NDA5NzBhNTdmL3RhYmxlcmFuZ2U6ODhjNzY4MzU1MWI0NDYzNmE0YWI1Yzg0MDk3MGE1N2ZfMy0xLTEtMS0yMjYxL3RleHRyZWdpb246MWIxZjFjZTNiZjY3NGFjZjhjMTg2MTZhZDExOTU2NTZfNA_405a60e5-f9b1-48e9-b9b9-e067dbfa8dbf">97.05</ix:nonFraction>%</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"><ix:nonFraction unitRef="number" contextRef="i84aed75aecf64140a55d8201e6975d87_D20200101-20200331" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjg4Yzc2ODM1NTFiNDQ2MzZhNGFiNWM4NDA5NzBhNTdmL3RhYmxlcmFuZ2U6ODhjNzY4MzU1MWI0NDYzNmE0YWI1Yzg0MDk3MGE1N2ZfMy0zLTEtMS0yMjYxL3RleHRyZWdpb246YTc4YmMwZjQyNDBkNGRmZmE4YWQ3ZDYxOWRmNWVjOGVfNQ_7b83ff61-fd2a-4efc-89b4-5b5fd503a89e">0.34</ix:nonFraction>% - <ix:nonFraction unitRef="number" contextRef="i84aed75aecf64140a55d8201e6975d87_D20200101-20200331" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjg4Yzc2ODM1NTFiNDQ2MzZhNGFiNWM4NDA5NzBhNTdmL3RhYmxlcmFuZ2U6ODhjNzY4MzU1MWI0NDYzNmE0YWI1Yzg0MDk3MGE1N2ZfMy0zLTEtMS0yMjYxL3RleHRyZWdpb246YTc4YmMwZjQyNDBkNGRmZmE4YWQ3ZDYxOWRmNWVjOGVfMTA_3cdef7e7-7479-4590-aac3-165219f4f5d4">0.36</ix:nonFraction>%</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"><ix:nonNumeric contextRef="ic8d742260c744f68b31555bc2ef0ee31_D20200101-20200331" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjg4Yzc2ODM1NTFiNDQ2MzZhNGFiNWM4NDA5NzBhNTdmL3RhYmxlcmFuZ2U6ODhjNzY4MzU1MWI0NDYzNmE0YWI1Yzg0MDk3MGE1N2ZfMy01LTEtMS0yMjYxL3RleHRyZWdpb246YTI3YTRlNDZlNDJkNGZiNmIzOTg2MGJlNzRmMTNkNTRfNA_640a3bdb-5fc3-41dc-a1f8-3d2268f396f6">4.29</ix:nonNumeric> -  <ix:nonNumeric contextRef="i32a94f674f9c4282bda3725ed1efa2c3_D20200101-20200331" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjg4Yzc2ODM1NTFiNDQ2MzZhNGFiNWM4NDA5NzBhNTdmL3RhYmxlcmFuZ2U6ODhjNzY4MzU1MWI0NDYzNmE0YWI1Yzg0MDk3MGE1N2ZfMy01LTEtMS0yMjYxL3RleHRyZWdpb246YTI3YTRlNDZlNDJkNGZiNmIzOTg2MGJlNzRmMTNkNTRfMTA_9c590d89-2cc7-4ac0-86b6-bc829318fa8b">4.79</ix:nonNumeric> years</span></div></td></tr></table></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0NzU_b1b5c6d8-80ba-405c-9f71-d42cd47886c9" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">A roll-forward of fair value measurements using significant unobservable inputs (Level 3) for the warrants is as follows (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:79.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.270%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended March 31, 2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Balance January 1, 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"><ix:nonFraction unitRef="usd" contextRef="ia14618e080534548a2781f9ad7ec8f84_I20191231" decimals="-3" format="ixt:zerodash" name="us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjZmYTUxZWRlZmMxODQ4ZTE4MGRkYzIwNGJlZmZmNGM3L3RhYmxlcmFuZ2U6NmZhNTFlZGVmYzE4NDhlMTgwZGRjMjA0YmVmZmY0YzdfMS0xLTEtMS0w_5b493e3c-3b44-4b82-bfb3-306784535b44">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Issuance of warrants, January 2020</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjZmYTUxZWRlZmMxODQ4ZTE4MGRkYzIwNGJlZmZmNGM3L3RhYmxlcmFuZ2U6NmZhNTFlZGVmYzE4NDhlMTgwZGRjMjA0YmVmZmY0YzdfMi0xLTEtMS0w_03a1d8f6-3d5a-4ac9-9ce9-ecced1c07fef">1,636</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Gain from change in fair value of warrants</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="us-gaap:FairValueAdjustmentOfWarrants" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjZmYTUxZWRlZmMxODQ4ZTE4MGRkYzIwNGJlZmZmNGM3L3RhYmxlcmFuZ2U6NmZhNTFlZGVmYzE4NDhlMTgwZGRjMjA0YmVmZmY0YzdfNC0xLTEtMS0w_56cdff3e-ecf3-4e38-98b7-911f1e9d2431">873</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Balance March 31, 2020</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"><ix:nonFraction unitRef="usd" contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331" decimals="-3" name="us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjZmYTUxZWRlZmMxODQ4ZTE4MGRkYzIwNGJlZmZmNGM3L3RhYmxlcmFuZ2U6NmZhNTFlZGVmYzE4NDhlMTgwZGRjMjA0YmVmZmY0YzdfNS0xLTEtMS0w_b534eed6-5532-45aa-b58b-79fab88de4cf">763</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_49"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 3. <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfNzk5NA_ef777a2c-d300-43a2-8eeb-82cd59bb78a6" continuedAt="i21c1d458a56542faad50e6fa46b3d74d" escape="true">RESTRUCTURING</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i21c1d458a56542faad50e6fa46b3d74d" continuedAt="i8074e6be306a45cfb80c062af357a03f"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March&#160;31, 2021 and March&#160;31, 2020, we recorded net restructuring credits of approximately $<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RestructuringCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfMTA5OTUxMTYzNTkxNA_45ef9e50-a491-4466-aa4e-9ced26e61a1a">19</ix:nonFraction> thousand and $<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" format="ixt:numdotdecimal" name="us-gaap:RestructuringCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfMTA5OTUxMTYzNTkyMQ_435071a1-157e-48db-a35a-d135f531a5aa">14</ix:nonFraction> thousand, respectively, related to the costs and offsetting sub-lease income and accretion expense for the remaining lease obligation for our former New York, New York office. For additional information regarding the restructuring actions taken as part of the restructuring plans, please refer to Note 3, &#8220;Restructuring,&#8221; included under Item&#160;8, &#8220;Financial Statements and Supplementary Data,&#8221; of our 2020 Annual Report.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our restructuring liabilities consist of estimated ongoing costs related to long-term operating lease obligations, which the Company exited. The recorded value of the ongoing lease obligations is based on the remaining lease term and payment amount, discounted to present value. Changes in subsequent periods resulting from a revision to either the timing or the amount of estimated cash flows over the future period are measured using the credit adjusted, risk free rate that was used to measure the restructuring liabilities initially. Please also refer to Note 6, &#8220;Leases&#8221;.</span></div></ix:continuation><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">16</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="i8074e6be306a45cfb80c062af357a03f" continuedAt="i78d7dfa9ef1b4e9a9f945c426c48dfdc"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfNzk5MQ_48e9b3a8-83eb-45db-aad4-8ed4b68d641d" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a reconciliation of the beginning and ending balances of our restructuring liability as it relates to the restructuring plans (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:58.359%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.869%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.400%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.872%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at December 31, 2020 and 2019</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i14709b4c82a0489196f048d100db74eb_I20201231" decimals="-3" name="us-gaap:RestructuringReserve" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfMS0xLTEtMS0xMjY2_03d8ad86-7cdc-471a-a871-b2754975e651">11</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="iedd1f016b9da46ea84aceb964ba2d25d_I20191231" decimals="-3" name="us-gaap:RestructuringReserve" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfMS0xLTEtMS0w_e5b9b063-0506-4e43-ac44-3d18b98c3b00">38</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accretion of lease obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27e7396aac0e4b97b740d544c79f4b1b_D20210101-20210331" decimals="-3" format="ixt:zerodash" name="efoi:RestructuringReserveAccretion" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfMi0xLTEtMS0xMjY2_ec605952-6677-49e5-8792-197045a4aadb">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ica32c0b758bf4b018d2e8647394b7df2_D20200101-20200331" decimals="-3" name="efoi:RestructuringReserveAccretion" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfMi0xLTEtMS0w_251a53df-1cde-409c-aa45-e2dfa38c3afd">1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i27e7396aac0e4b97b740d544c79f4b1b_D20210101-20210331" decimals="-3" name="us-gaap:PaymentsForRestructuring" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfMy0xLTEtMS0xMjg4_f6336c07-0f70-4b9e-89ec-6a9d93ca1f2a">6</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ica32c0b758bf4b018d2e8647394b7df2_D20200101-20200331" decimals="-3" name="us-gaap:PaymentsForRestructuring" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfMy0xLTEtMS0w_b21552aa-bb10-4fab-b775-717774e35778">8</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at March 31, 2021 and 2020</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i64ee7f906d4b4626994aae8553910939_I20210331" decimals="-3" name="us-gaap:RestructuringReserve" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfNC0xLTEtMS0xMjg4_62f35dff-09c1-4b1e-a04b-9fa3c5e728e2">5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibf094f935bc54a188e70ed93967f05b2_I20200331" decimals="-3" name="us-gaap:RestructuringReserve" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfNC0xLTEtMS0w_0bf3f810-3aba-4f2e-9148-2ec431a466e5">31</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a reconciliation of the ending balance of our restructuring liability at March&#160;31, 2021 to the balance sheet:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:58.359%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.869%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.400%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.872%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at March 31, 2021 and 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i64ee7f906d4b4626994aae8553910939_I20210331" decimals="-3" name="us-gaap:RestructuringReserve" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmM0NmMyMDIyNzNlZjRkMmFhNTE5NzVhNTIzNjFlODY1L3RhYmxlcmFuZ2U6YzQ2YzIwMjI3M2VmNGQyYWE1MTk3NWE1MjM2MWU4NjVfMS0xLTEtMS0xMzAz_885ab2d1-2f23-4dcd-996f-a822ec670a84">5</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibf094f935bc54a188e70ed93967f05b2_I20200331" decimals="-3" name="us-gaap:RestructuringReserve" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmM0NmMyMDIyNzNlZjRkMmFhNTE5NzVhNTIzNjFlODY1L3RhYmxlcmFuZ2U6YzQ2YzIwMjI3M2VmNGQyYWE1MTk3NWE1MjM2MWU4NjVfMS0xLTEtMS0w_b88d0414-e1db-43a0-8374-d736a9519e8c">31</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less, short-term restructuring liability</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i64ee7f906d4b4626994aae8553910939_I20210331" decimals="-3" name="us-gaap:RestructuringReserveCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmM0NmMyMDIyNzNlZjRkMmFhNTE5NzVhNTIzNjFlODY1L3RhYmxlcmFuZ2U6YzQ2YzIwMjI3M2VmNGQyYWE1MTk3NWE1MjM2MWU4NjVfMi0xLTEtMS0xMzAz_3b75a479-5b47-4190-a02b-4b2ae7c42d44">5</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibf094f935bc54a188e70ed93967f05b2_I20200331" decimals="-3" name="us-gaap:RestructuringReserveCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmM0NmMyMDIyNzNlZjRkMmFhNTE5NzVhNTIzNjFlODY1L3RhYmxlcmFuZ2U6YzQ2YzIwMjI3M2VmNGQyYWE1MTk3NWE1MjM2MWU4NjVfMi0xLTEtMS0w_3bd61f23-abbb-4320-b57c-e6a376570acb">24</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term restructuring liability, included in other liabilities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i64ee7f906d4b4626994aae8553910939_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:RestructuringReserveNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmM0NmMyMDIyNzNlZjRkMmFhNTE5NzVhNTIzNjFlODY1L3RhYmxlcmFuZ2U6YzQ2YzIwMjI3M2VmNGQyYWE1MTk3NWE1MjM2MWU4NjVfMy0xLTEtMS0xMzE0_be645f9e-fb5d-47ff-9148-a1a09d1f96f7">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibf094f935bc54a188e70ed93967f05b2_I20200331" decimals="-3" name="us-gaap:RestructuringReserveNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmM0NmMyMDIyNzNlZjRkMmFhNTE5NzVhNTIzNjFlODY1L3RhYmxlcmFuZ2U6YzQ2YzIwMjI3M2VmNGQyYWE1MTk3NWE1MjM2MWU4NjVfMy0xLTEtMS0w_cfc6d48a-b05f-4ca1-816d-2e0a3932d0e6">7</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the restructuring actions and initiatives described above, we have reduced our operating expenses to be more commensurate with our sales volumes. However, we continue to incur losses and have a substantial accumulated deficit, and </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">substantial doubt about our ability to continue as a going concern continues to exist at March&#160;31, 2021. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Throughout 2020, as well as the first quarter 2021, we have continued to evaluate and assess strategic options as we seek to achieve profitability. We plan to achieve profitability through growing our sales by continuing to execute on our multi-channel sales strategy that targets key verticals, such as government, healthcare, education, and commercial and industrial, complemented by our marketing outreach campaigns and expanding channel partnerships. We also plan to continue to develop and launch advanced lighting and lighting control technologies and introduce impactful new products such as EnFocus&#8482;, a breakthrough lighting control platform we officially launched during the second quarter of 2020. In addition, during the last quarter of 2020, we announced newly developed UVCD products for both consumer, as well as commercial and industrial markets, that are expected to be available in the third quarter of 2021.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As described in Note 9, &#8220;Stockholders&#8217; Equity,&#8221; we also raised approximately $<ix:nonFraction unitRef="usd" contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131" decimals="-5" format="ixt:numdotdecimal" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfMjgzNw_b1c8ee82-1725-4f4b-80b7-6b520d53ed99">2.3</ix:nonFraction> million of net proceeds upon the issuance of common stock and warrants in connection with the January 2020 Equity Offering. Additionally, in August 2020, we entered into two new revolving credit facilities as described in Note 7, &#8220;Debt,&#8221; which allow for expanded borrowing capacity, which capacity was further increased by an April 20, 2021 amendment to one of the facilities. See Note 11, &#8220;Subsequent Events&#8221;. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The restructuring and cost cutting initiatives implemented during 2020, as well as the January 2020 Equity Offering that significantly strengthened our balance sheet, the PPP loan we obtained in April 2020 and our enhanced debt capacity due to the debt refinancing in August 2020 and capacity increase and additional bridge financing in April 2021, were designed to allow us to effectively execute these strategies. However, our efforts may not occur as quickly as we envision or be successful due to the long sales cycle in our industry, the corresponding time required to ramp up sales from new products and markets into this sales cycle, the timing of introductions of additional new products, significant competition, potential sales volatility given our customer concentration, and the recent and lingering economic impact from the COVID-19 pandemic that had significantly diminished the interest and activities for lighting retrofit projects until occupancy returns to more normal levels, among other factors. As a result, we will continue to review and pursue selected external funding sources to ensure adequate financial resources to execute across the timelines required to achieve these objectives including, but not limited to, the following:</span></div><div><span><br/></span></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">obtaining financing from traditional or non-traditional investment capital organizations or individuals; </span></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">obtaining funding from the sale of our common stock or other equity or debt instruments; and</span></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">obtaining debt financing with lending terms that more closely match our business model and capital needs.</span></div><div style="padding-left:36pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There can be no assurance that we will obtain funding on acceptable terms, in a timely fashion, or at all. Obtaining additional funding contains risks, including:</span></div></ix:continuation><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">17</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="i78d7dfa9ef1b4e9a9f945c426c48dfdc"><div style="padding-left:72pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">additional equity financing may not be available to us on satisfactory terms, and any equity we are able to issue could lead to dilution for current stockholders and have rights, preferences and privileges senior to our common stock;</span></div><div style="padding-left:72pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">loans or other debt instruments may have terms and/or conditions, such as interest rate, restrictive covenants, conversion features, refinancing demands, and control or revocation provisions, which are not acceptable to management or our board of directors; and</span></div><div style="padding-left:72pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">the current environment in the capital markets combined with our capital constraints may prevent us from being able to obtain adequate debt financing.</span></div><div style="padding-left:36pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">If we fail to obtain the required additional financing to sustain our business before we are able to produce levels of revenue to meet our financial needs, we will need to delay, scale back or eliminate our growth plans and further reduce our operating costs and headcount, each of which would have a material adverse effect on our business, future prospects, and financial condition. A lack of additional funding could also result in our inability to continue as a going concern and force us to sell certain assets or discontinue or curtail our operations and, as a result, investors in the Company could lose their entire investment.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Considering both quantitative and qualitative information, we continue to believe that the combination of our plans to obtain additional external funding, timely re-organizational actions, current financial position, liquid resources, obligations due or anticipated within the next year, development and implementation of an excess inventory reduction plan, plans and initiatives in our research and development, product development and sales and marketing, and development of potential channel partnerships, if adequately executed, will provide us with an ability to finance our operations through the next twelve months and will mitigate the substantial doubt about our ability to continue as a going concern. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On August 17, 2020, we received a letter from the Listing Qualifications staff (the &#8220;Staff&#8221;) of The Nasdaq Stock Market (&#8220;Nasdaq&#8221;) notifying us that we were no longer in compliance with Nasdaq Listing Rule 5550(b)(1), which requires listed companies to maintain stockholders&#8217; equity of at least $2,500,000 if they do not meet the alternative compliance standards relating to the market value of listed securities or net income from continuing operations (the &#8220;Minimum Stockholders&#8217; Equity Rule&#8221;). Our Quarterly Report on Form 10-Q for the quarterly period ended June 30, 2020, filed on August 13, 2020, reflected that our stockholders&#8217; equity as of June 30, 2020 was $<ix:nonFraction unitRef="usd" contextRef="i9c3de87bc8c44c3da15548537e3ffc68_I20200630" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfMzI5ODUzNDg5NDAyOA_14fdd475-7059-43ac-9749-c848378b6513">1,714,000</ix:nonFraction>. In addition, as of August 13, 2020, we did not meet the alternative compliance standards relating to the market value of listed securities or net income from continuing operations. On October 5, 2020, based on our timely submission of our plan to regain compliance, Nasdaq granted us an extension through February 15, 2021 to regain compliance with the Minimum Stockholders&#8217; Equity Rule, subject to our compliance with certain terms of the extension. In accordance with one part of the plan submitted to the Staff, we have successfully modified our outstanding warrants and are able to now classify the warrants within equity. At December 31, 2020, our stockholders&#8217; equity was $<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfMzI5ODUzNDg5NDA1NA_cf7772f1-f222-4eb6-a681-617122f1f14e">4,255,000</ix:nonFraction>. On January 20, 2021, we received a letter from the Staff notifying us that, on a conditional basis, Nasdaq has determined that we have regained compliance with the Minimum Stockholders&#8217; Equity Rule. At March&#160;31, 2021, our stockholders&#8217; equity was $<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockholdersEquity" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfMzI5ODUzNDg5NDM0Ng_fb7b1845-b432-4677-aa87-81a854045a48">3,278,000</ix:nonFraction>.</span></div></ix:continuation><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">18</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_55"></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 4. <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:InventoryDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RleHRyZWdpb246ODI2N2IxODJhZDJkNDExYzgzMDgwNzc0MDE3NTI2OTJfMzY2_c958dd0a-9221-47fb-ba76-4a885cbf31d0" continuedAt="i6432128d0a5e4dbcbe9a153df4895a18" escape="true">INVENTORIES</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i6432128d0a5e4dbcbe9a153df4895a18"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RleHRyZWdpb246ODI2N2IxODJhZDJkNDExYzgzMDgwNzc0MDE3NTI2OTJfMzU2_c0e73a65-08f1-457e-8ba5-e1199a46b552" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories are stated at the lower of standard cost (which approximates actual cost determined using the first-in, first-out cost method) or net realizable value, and consist of the following (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:64.815%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.569%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Raw materials</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfMS0xLTEtMS0w_de3f5c5d-af41-4c15-8f09-b92120506e6b">4,373</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfMS0zLTEtMS0w_cae23492-924a-4c3e-883d-e569519637f1">2,695</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfMi0xLTEtMS0w_36e4ceef-6993-48da-bca7-0df1d6602156">6,125</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfMi0zLTEtMS0w_fdeadaab-5653-42d6-97d4-9c4ae2113f84">5,840</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reserves for excess, obsolete, and slow-moving inventories </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="efoi:InventoryValuationReservesRawMaterials" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfMy0xLTEtMS0w_14821c4e-d8e4-4795-9bc7-ac888df4a7ad">2,983</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="efoi:InventoryValuationReservesRawMaterials" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfMy0zLTEtMS0w_4780b0d2-b097-484a-b210-d21fa281c055">2,894</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Inventories, net</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfNC0xLTEtMS0w_3655dab1-1129-46fe-ab6f-7b77cbfa211f">7,515</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:InventoryNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfNC0zLTEtMS0w_57c5a6dd-de4a-462d-a0db-987bf8806cd1">5,641</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a roll-forward of the reserves for excess, obsolete, and slow-moving inventories (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:64.815%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.569%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31, 2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Twelve months ended December 31, 2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beginning balance</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="efoi:InventoryValuationReservesRawMaterials" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfMS0xLTEtMS0w_76d11004-ceb5-42fc-a29a-847e9307b084">2,894</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia14618e080534548a2781f9ad7ec8f84_I20191231" decimals="-3" format="ixt:numdotdecimal" name="efoi:InventoryValuationReservesRawMaterials" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfMS0zLTEtMS0w_79e3d115-fbfa-4756-ba97-eeba6c44a079">3,518</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrual</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" name="efoi:InventoryValuationReservesProvisionAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfMi0xLTEtMS0w_bab31bad-1f72-4583-a37a-2e96e8a4f79d">101</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i00eb0670d1e149a2a10c5ce329bb1fa2_D20200101-20201231" decimals="-3" name="efoi:InventoryValuationReservesProvisionAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfMi0zLTEtMS0w_d775950d-9f81-4dd9-b0fe-30929a9278a2">281</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reduction due to sold inventory</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="efoi:InventoryValuationReservesSalesOfInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfMy0xLTEtMS0w_78afeb4e-6083-4ef3-aeaf-56bc23384ad2">12</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i00eb0670d1e149a2a10c5ce329bb1fa2_D20200101-20201231" decimals="-3" name="efoi:InventoryValuationReservesSalesOfInventory" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfMy0zLTEtMS0w_5293ba51-e0fe-45bc-9147-6f7c155cabd3">343</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Reserves for excess, obsolete, and slow-moving inventories</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="efoi:InventoryValuationReservesRawMaterials" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfNS0xLTEtMS0w_723c7ba8-2852-42a2-b9a5-9eb3fbdd2d07">2,983</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="efoi:InventoryValuationReservesRawMaterials" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfNS0zLTEtMS0w_019c1ac3-71f0-4be3-9f2c-1c0150bbdaec">2,894</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_58"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">5.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RleHRyZWdpb246Y2EwMjc2ZjhkZmI2NDUyMGE2NzE1NmZjYTU0ZmE1MGRfMzcx_08ff2e42-da15-4997-bf23-ecdb9c062125" continuedAt="i36f99e1aec5a45afb3c34f1df596f7e7" escape="true">PROPERTY AND EQUIPMENT</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i36f99e1aec5a45afb3c34f1df596f7e7"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RleHRyZWdpb246Y2EwMjc2ZjhkZmI2NDUyMGE2NzE1NmZjYTU0ZmE1MGRfMzc0_ca385032-9f78-4e6d-ade8-f33002d79924" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment are stated at cost and depreciated using the straight-line method over the estimated useful lives of the related assets and consist of the following (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:64.815%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.569%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Equipment (useful life <ix:nonNumeric contextRef="i6d49f812163f4d3d85774dca03acfc52_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMS0wLTEtMS0wL3RleHRyZWdpb246ZDI0OGRmNmEwZDMyNGExMDgzMTQwYzNmMGY5OTJhZThfMjc_5440e516-2e11-4e9c-a23b-feff0243abb2">3</ix:nonNumeric> to <ix:nonNumeric contextRef="i88122b3825db421e9e332c8822107e7e_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMS0wLTEtMS0wL3RleHRyZWdpb246ZDI0OGRmNmEwZDMyNGExMDgzMTQwYzNmMGY5OTJhZThfMzM_19454439-919e-4723-82f7-6d01ebfcbab7">15</ix:nonNumeric> years)</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7be828f171874cdba42b9f4de1d4b61a_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMS0xLTEtMS0w_266001e9-bfee-4245-b023-8fd50ade2f90">1,281</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i5bbc9f91e427445cbc2f4a548bc0471a_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMS0zLTEtMS0w_d4b57a11-7d6d-46cd-8625-3dbd1a171a2f">1,281</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tooling (useful life <ix:nonNumeric contextRef="i8cc262b55c044c01b5b660dcc05b6cc7_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMi0wLTEtMS0wL3RleHRyZWdpb246OWQ4YzFkNWVjNTcxNDVkMjgxYmRjN2I2MmMwN2RkNTlfMjU_c80ba662-3e0c-49fe-9bc1-fa0c048aa456">2</ix:nonNumeric> to <ix:nonNumeric contextRef="ie786e94dc15f47d1a47500ff99d55d06_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMi0wLTEtMS0wL3RleHRyZWdpb246OWQ4YzFkNWVjNTcxNDVkMjgxYmRjN2I2MmMwN2RkNTlfMzE_e40f8afd-00ef-4d7e-836a-3544578b8cb8">5</ix:nonNumeric> years)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i74891aff588748ea823cc93f34624d19_I20210331" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMi0xLTEtMS0w_ca68f8fe-b881-44ea-8c2b-b22536b1cc08">240</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i311e719c864f4fefa008ef89eb519e26_I20201231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMi0zLTEtMS0w_b6de3f9a-955d-4af2-b742-acc4023ccf3d">240</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vehicles (useful life <ix:nonNumeric contextRef="i9898ed25029e4253af5809004bb34303_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMy0wLTEtMS0wL3RleHRyZWdpb246NDE5YjZjNTUyMWZlNDE1ZTk4ODFmZDhlZjU0NTJmYWZfMjY_0edf4b7f-d84c-4051-896d-ca6aff2fa233">5</ix:nonNumeric> years)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4977389893ac44e393b1813f5f0d864e_I20210331" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMy0xLTEtMS0w_7c0d2c5b-6cad-45ac-ae0d-e1c5eecec6a3">80</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie8ad94c0c98d44158c649f4918166bd3_I20201231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMy0zLTEtMS0w_e023b026-64d1-4182-9492-82810a7f98fa">47</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Furniture and fixtures (useful life <ix:nonNumeric contextRef="i6f748e5851a34d9f96a88b9f90daefbc_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNC0wLTEtMS0wL3RleHRyZWdpb246ZTVlM2U1MGVlMWIwNGZhZTk1ZDhkZDQ1M2MzNGJiNTBfNDA_fed4b802-d9a2-4f00-ad9b-632b77bf70c4">5</ix:nonNumeric> years)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id61537b927a64c8e9bf6ef3bbdb02b02_I20210331" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNC0xLTEtMS0w_8d94b5e2-8062-44f7-b0c7-e7245c3705b9">137</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia383ca85d770415d9f2286930cd26494_I20201231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNC0zLTEtMS0w_609d7a0f-e7ed-4a2a-95a0-b7dc3cd03cc0">137</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer software (useful life <ix:nonNumeric contextRef="i8d4ec91ede574a03a42c7a5660e5b306_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNS0wLTEtMS0wL3RleHRyZWdpb246NTkwZjg0NDM4N2ZkNGM0NTliNDg4MzdkNmYzMTUyZmJfMzU_b3c3088a-115b-43f3-b034-0d8f612a9362">3</ix:nonNumeric> years)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0b2c25b550af4aa58cb88a8a68b53a2d_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNS0xLTEtMS0w_3fb921be-f350-4719-a3f9-d8812d57c674">1,121</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i002e091ac95b419093f8a3ed4f1251ff_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNS0zLTEtMS0w_d02085a2-56e8-400a-843f-79a95e334a09">1,057</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements (the shorter of useful life or lease life)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i410f5b8952f743bc8f88687a4f16c3f3_I20210331" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNi0xLTEtMS0w_57d9e81c-2109-4f72-8373-a5fdf5a2c926">169</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ib0161b0e3e184209b353725f323913c5_I20201231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNi0zLTEtMS0w_cd2cb15e-20b2-4dbd-93de-d862ce54c9f2">169</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease right-of-use asset</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia0e5f09ba4894d82b81dee38c0c97b19_I20210331" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNy0xLTEtMS0w_61900b73-a2d0-4dca-b868-e9700f6ac0ff">13</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i56aa58345d2e46e3bb52b44cd3fa1525_I20201231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNy0zLTEtMS0w_717fafb3-4e70-4105-bc7a-1ffca4cc3ba1">13</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Projects in progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i421ce1d0676647019fe74bdb4cb14a23_I20210331" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfOC0xLTEtMS0w_d8cf4837-2efd-4854-8305-333dd4f45582">152</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0553e71729f146bfa2eb8010210837d3_I20201231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfOC0zLTEtMS0w_8e75c052-0c6b-4c6b-a945-b1ebca662459">140</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Property and equipment at cost</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfOS0xLTEtMS0w_b5ad4bc5-b27a-4b8b-925d-9e6a05ca675b">3,193</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PropertyPlantAndEquipmentGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfOS0zLTEtMS0w_c3f11067-2196-45ae-91c9-ce1766d60b1c">3,084</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMTAtMS0xLTEtMA_44708f63-0943-408b-919a-688ec0573536">2,711</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMTAtMy0xLTEtMA_2c8bd1a6-c10f-47c0-941f-b95563ecd2a0">2,664</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Property and equipment, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMTEtMS0xLTEtMA_bd391b8d-996c-4da8-9a1c-5531cd8000ff">482</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMTEtMy0xLTEtMA_077bb344-c777-4cc2-b5b8-4754ff3db4bb">420</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Depreciation expense was $<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Depreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RleHRyZWdpb246Y2EwMjc2ZjhkZmI2NDUyMGE2NzE1NmZjYTU0ZmE1MGRfMTA5OTUxMTYyODE1OA_e8cac10d-e32c-4eb6-bfed-f6afdc576f24">47</ix:nonFraction>&#160;thousand and $<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:Depreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RleHRyZWdpb246Y2EwMjc2ZjhkZmI2NDUyMGE2NzE1NmZjYTU0ZmE1MGRfMTA5OTUxMTYyODE2NQ_c65f83da-5cc2-497f-b09e-e711244bf763">46</ix:nonFraction>&#160;thousand for the three months ended March 31, 2021 and 2020, respectively.</span></div></ix:continuation><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_61"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 6. <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:LesseeOperatingLeasesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE1OA_36597181-d00a-463b-9090-25df3de2e999" continuedAt="i85292ae678e344cebc496b64523c5ea9" escape="true"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:LesseeFinanceLeasesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE1OA_f7aa27c5-db20-499f-a549-2990f74f3721" continuedAt="i1e538f99cf294d8fb65e57569e98689c" escape="true">LEASES</ix:nonNumeric></ix:nonNumeric></span></div><div><span><br/></span></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i85292ae678e344cebc496b64523c5ea9" continuedAt="ib0d8507554fe4fb380fe78f9047a121f"><ix:continuation id="i1e538f99cf294d8fb65e57569e98689c" continuedAt="i67d032b516374a769b18d8fed383da8e">The Company leases certain equipment, manufacturing, warehouse and office space under non-cancellable operating leases with expirations through 2026 under which it is responsible for related maintenance, taxes and insurance. The Company has one finance lease containing a bargain purchase option upon expiration of the lease in 2022. The lease term consists of the non-cancellable period of the lease, periods covered by options to extend the lease if the Company is reasonably certain to exercise the option, and periods covered by an option to terminate the lease if the Company is reasonably certain not to exercise the option. As of January 21, 2021, the terms of one of these equipment operating leases has been extended through </ix:continuation></ix:continuation></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">19</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="ib0d8507554fe4fb380fe78f9047a121f" continuedAt="i98587dd2e1354925ba2c8780c9597b63"><ix:continuation id="i67d032b516374a769b18d8fed383da8e" continuedAt="i7b77f67fc94b4c0ca9ec6df04bad7e54"><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2026. In accordance with Accounting Standard Codification 842, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Leases</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#8220;Topic 842&#8221;), the related right-of-use asset and lease liability was updated at the time of modification in January 2021. The present value of the lease obligation for this lease was calculated using an incremental borrowing rate of <ix:nonFraction unitRef="number" contextRef="i01c4d52bc6c44c60ae149c09a5bffa8c_I20210121" decimals="4" name="efoi:LesseeOperatingLeaseInterestRateEffectiveRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMTA5OTUxMTYzMTg5Mw_07ea219c-94a6-4cd4-8a19-9f8af16a5e39">15.93</ix:nonFraction>%, which was the Company&#8217;s blended borrowing rate on its revolving lines of credit with Crossroads Financial Group, LLC (as described below in Note 7, &#8220;Debt&#8221;) and Factors Southwest L.L.C. (as described below in Note 7, &#8220;Debt&#8221;). The present value of the remaining lease obligation was calculated using an incremental borrowing rate of <ix:nonFraction unitRef="number" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="4" name="us-gaap:LesseeOperatingLeaseDiscountRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfNzcx_6b9e35e7-139e-47f4-ae7d-c14be5e979d4">7.25</ix:nonFraction>%, which was the Company&#8217;s borrowing rate on its former revolving line of credit with Austin Financial Services, Inc. (the &#8220;Austin Credit Facility&#8221;). The weighted average remaining lease term for operating, restructuring and finance leases is <ix:nonNumeric contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" format="ixt-sec:duryear" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMTAxNQ_8e3b660a-1b93-4983-b7cc-ed4913b07da8">1.6</ix:nonNumeric> years, <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:duryear" name="efoi:RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMTAyNQ_c0e39361-44fe-4735-b64d-67ea6200f89d">0.3</ix:nonNumeric> years, and <ix:nonNumeric contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" format="ixt-sec:duryear" name="us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMTAzOQ_ce6fa11e-e38f-4b48-a687-f38e77faed1c">1.1</ix:nonNumeric> years, respectively.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company had one restructured lease with a sub-lease component for the New York, New York office that was closed in 2017. The lease expires in 2021. As part of the lease agreement, there was $<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:RestrictedCash" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMTI1NQ_95e66bd7-34fc-49a9-b71e-b7680f0be088">0.3</ix:nonFraction> million in restricted cash in other current assets on the accompanying Condensed Consolidated Balance Sheets as of both March&#160;31, 2021 and December&#160;31, 2020, which represents collateral against the related letter of credit issued as part of this agreement.</span></div><div><span><br/></span></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The restructured lease and sub-lease were deemed to be in-scope and thus subject to the requirements of Topic 842 and were evaluated for impairment in accordance with the asset impairment provisions of Accounting Standard Codification 360, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Property, Plant and Equipment</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#8220;Topic 360&#8221;). The Company concluded its net right-of-use assets were not impaired and the carrying amount approximates expected sub-lease income in future years as of March&#160;31, 2021. The Company continues to carry certain immaterial operating expenses associated with this lease as restructuring liabilities and will continue to accrete those liabilities in accordance with Accounting Standard Codification 420, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Exit or Disposal Cost Obligations</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#8220;Topic 420&#8221;), as has been done since the cease use date in 2017. For additional information regarding treatment of leases please refer to Note 4, &#8220;Leases,&#8221; included under Item 8, &#8220;Financial Statements and Supplementary Data,&#8221; of our 2020 Annual Report.</span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:LeaseCostTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE3NQ_c8d19daa-7eb3-46ee-a442-4b1d5cd7a6a0" escape="true"><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of the operating, restructured and finance lease costs recognized in net loss for the three months ended March&#160;31, 2021 and 2020, were as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:64.515%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.851%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.568%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating lease cost (income)</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sub-lease income</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:SubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfMy0zLTEtMS0w_59f92c4d-44b0-4758-8df7-25ef4de373fe">25</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:SubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfMy01LTEtMS0w_6fc4c825-773d-4668-b795-cf0cfa48460b">25</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lease cost</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:OperatingLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfNC0zLTEtMS0w_96cf2d03-eb3f-4e47-a57b-5882d8bb3905">143</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:OperatingLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfNC01LTEtMS0w_5ad5f26f-e808-448c-bcfe-d7b5e3ab77b7">152</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost, net</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="efoi:OperatingLeaseCostNetOfSubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfNS0zLTEtMS0w_4738302b-0c0a-466b-9813-b575ed9f89b3">118</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="efoi:OperatingLeaseCostNetOfSubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfNS01LTEtMS0w_e17c0e9b-45a2-457c-82d5-6684fd53fcfd">127</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:8pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Restructured lease cost (income)</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sub-lease income</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="efoi:RestructuredLeaseSubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfOC0zLTEtMS0w_2f1cc39a-5164-4189-9496-135a60a49f38">68</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="efoi:RestructuredLeaseSubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfOC01LTEtMS0w_6c271bfe-eda3-4d94-8bb6-541fb3f64aee">68</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lease cost</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="efoi:RestructuredLeaseOperatingLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfOS0zLTEtMS0w_47b5101d-c968-432f-ae4a-d5e0f3022236">56</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="efoi:RestructuredLeaseOperatingLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfOS01LTEtMS0w_fabbffdb-6339-4b9e-ad31-ef7ca83b2e91">61</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructured lease income, net</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" sign="-" name="efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfMTAtMy0xLTEtMA_88cab266-8014-421f-bdea-d13e6eee54a7">12</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" sign="-" name="efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfMTAtNS0xLTEtMA_3beb2c45-4c4d-414f-870f-a559cb30255d">7</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:11pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total lease cost, net</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:LeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfMTYtMy0xLTEtMA_7fc8272a-d446-48c0-9276-f2b0f1cb4994">106</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:LeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfMTYtNS0xLTEtMA_e0c160ed-e685-4e31-ae8d-4116177d0bb6">120</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric></ix:continuation></ix:continuation><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">20</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><div style="margin-bottom:8pt"><span><br/></span></div><ix:continuation id="i98587dd2e1354925ba2c8780c9597b63"><ix:continuation id="i7b77f67fc94b4c0ca9ec6df04bad7e54"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="efoi:LeaseSupplementalBalanceSheetInformationTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE5Mg_333ca2f6-b35e-45ae-9337-8cba59432bb3" escape="true"><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to the Company&#8217;s operating and finance leases as of March&#160;31, 2021 and December&#160;31, 2020 are as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:64.515%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.851%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.568%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMi0xLTEtMS0w_1cd5c644-969e-4fb3-bdbf-919d484b645a">676</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMi0zLTEtMS0w_2dd2ae56-3c5c-4a20-88d3-87f2797e7c1a">794</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructured lease right-of-use assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:RestructuredOperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMy0xLTEtMS0w_256fb6ad-2977-490d-85f6-32ee9ff11147">54</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="efoi:RestructuredOperatingLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMy0zLTEtMS0w_a88fbc15-7fc4-4998-9694-52a3b3bfd56f">107</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use assets, total</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:OperatingLeaseRightofUseAssetIncludingRestructuredLeases" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfNC0xLTEtMS0w_4c50b35b-deb0-458c-a64e-ea174fcc99b1">730</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="efoi:OperatingLeaseRightofUseAssetIncludingRestructuredLeases" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfNC0zLTEtMS0w_f6b50075-fcf6-45e4-92f9-5a4337dbabee">901</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:OperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfNi0xLTEtMS0w_33509a44-c31a-4d7e-b309-21cb2f716fc7">781</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:OperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfNi0zLTEtMS0w_5b01ea08-2624-404e-a4c1-b2d19966ff9f">916</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructured lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:RestructuredOperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfNy0xLTEtMS0w_2a94e4c0-71b6-4b34-8fbc-185fbef8e4ec">85</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="efoi:RestructuredOperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfNy0zLTEtMS0w_f297ec62-1dd8-4c56-8239-b9a12507645f">168</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities, total</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:OperatingLeaseLiabilityIncludingRestructuredLeases" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfOC0xLTEtMS0w_f99604b1-f7cd-4383-a208-a6747865e40e">866</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="efoi:OperatingLeaseLiabilityIncludingRestructuredLeases" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfOC0zLTEtMS0w_ef11e434-c8ce-4168-a51a-03a476041d8c">1,084</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Finance Leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:FinanceLeaseRightOfUseAssetGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTEtMS0xLTEtMA_73af9f33-2610-4a69-9621-f16c4bfcb8f4">13</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="efoi:FinanceLeaseRightOfUseAssetGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTEtMy0xLTEtMA_fc7db705-b854-4c4c-accd-37b097a5cd6f">13</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Allowances for depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:FinanceLeaseRightOfUseAssetAccumulatedDepreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTItMS0xLTEtMA_a3f87fea-1ab9-4877-a933-a6f626b76c03">10</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="efoi:FinanceLeaseRightOfUseAssetAccumulatedDepreciation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTItMy0xLTEtMA_37367fb2-163c-48d7-976f-b3bb3091246a">9</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease assets, net</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTMtMS0xLTEtMA_acb708c8-a154-4dd7-b578-08998f49d1f6">3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:FinanceLeaseRightOfUseAsset" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTMtMy0xLTEtMA_cf8b4eb0-c390-47f2-b683-fe50bd9738b9">4</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:9pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTUtMS0xLTEtMA_85ff8336-1dbd-4135-bec1-6be6f19d5156">3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTUtMy0xLTEtMA_f28e857c-1779-4694-9881-77ac3ea33b62">4</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total finance lease liabilities</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTYtMS0xLTEtMA_024cc18e-1f88-4fba-bf3e-c5ac18eb6e44">3</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTYtMy0xLTEtMA_ba0be0c6-d418-4054-9e9f-ada0b7a8684a">4</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><div style="margin-bottom:8pt"><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE3OQ_9f7c6ffa-6710-4f33-8298-cc559d328a14" escape="true"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE3OQ_b7754b7d-581c-42bf-b060-2f57b5ec87af" escape="true"><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future minimum lease payments required under operating, restructured and finance leases for each of the 12-month rolling periods below in effect at March&#160;31, 2021 are as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:34.635%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:14.966%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.966%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.966%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.967%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restructured Leases</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restructured Leases Sub-lease Payments</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Finance Lease</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2021 to March 2022</span></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMS0yLTEtMS0w_645eb789-a8ed-441c-aba9-988269c45864">621</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMS0zLTEtMS0w_9bab413f-8f14-44a6-86d8-cd1771667b62">86</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMS00LTEtMS0w_dc4f3dd6-6069-4662-b7f2-bfabe5cfa997">68</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMS01LTEtMS0w_599fd333-5a24-4e8d-93fc-be5697609c8f">3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2022 to March 2023</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMi0yLTEtMS0w_1d84bc33-9cc7-461d-9f70-57c830e7ee99">175</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMi0zLTEtMS0w_fae73b65-eb1a-4cae-bfbc-dd89362c289c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMi00LTEtMS0w_c39250df-bb91-49c3-b947-7ecfdf5ec2c1">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:FinanceLeaseLiabilityPaymentsDueInRollingYearTwo" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMi01LTEtMS0w_871952f5-3203-4c52-a4c3-a10047c15d71">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2023 to March 2024</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMy0yLTEtMS0w_a13743b3-ac77-4ca2-bb4a-74c91e23e7ff">16</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMy0zLTEtMS0w_43dab868-8474-4917-9b85-95195a667552">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedRollingYearThree" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMy00LTEtMS0w_8427fca1-e7c1-44d0-a5ca-d88b56cd4e0b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:FinanceLeaseLiabilityPaymentsDueInRollingYearThree" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMy01LTEtMS0w_0033b604-aa25-48aa-89cd-4f68545a8b2d">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2024 to March 2025</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNC0yLTEtMS0w_8ca66179-80dc-4abf-a0d4-6e0af766ff6e">3</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNC0zLTEtMS0w_57f61cdf-4e68-454a-8428-187431481899">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedRollingYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNC00LTEtMS0w_e7d5ed2a-9c7c-46ad-8967-f12b0949391a">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:FinanceLeaseLiabilityPaymentsDueInRollingYearFour" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNC01LTEtMS0w_ccd39d12-62cc-42f7-ad6a-7ee40cb89ef3">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2025 to March 2026</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNS0yLTEtMS0w_07a33aee-23a0-451f-a75b-da93e55808fc">3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNS0zLTEtMS0w_919c5e97-8e1f-49c3-bbf6-41fed556ee4c">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:LessorOperatingLeasePaymentsToBeReceivedRollingYearFive" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNS00LTEtMS0w_50c0161f-f799-47da-87b0-31fd32cde2a1">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:FinanceLeaseLiabilityPaymentsDueInRollingYearFive" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNS01LTEtMS0w_1275e2e1-37a3-4eca-a4c1-d6d78adcedc2">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total future undiscounted lease payments</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNi0yLTEtMS0w_5b7641da-c010-4005-bb16-702aff441df1">818</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNi0zLTEtMS0w_c7f5ccb6-d19e-444b-8324-d7a5e6a3ccc9">86</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:LessorOperatingLeasePaymentsToBeReceived" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNi00LTEtMS0w_a30a9152-dbf2-45ab-9fe7-b4fa15a8edb3">68</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:FinanceLeaseLiabilityPaymentsDue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNi01LTEtMS0w_c6fc92b5-f68c-402c-8385-3bebe7aa1c9f">3</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less imputed interest</span></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNy0yLTEtMS0w_ce0a9032-fa6d-4d75-8244-f84e82cb70ce">37</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNy0zLTEtMS0w_25cb19c4-013e-4f20-84f3-a98edc486969">1</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="efoi:LessorOperatingLeaseLiabilityUndiscountedExcessAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNy00LTEtMS0w_11dbfcd5-71d8-4192-bd8f-5436f709a7bc">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" format="ixt:zerodash" name="us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNy01LTEtMS0w_e346b4d8-7ca2-4d43-b5be-b686fb8ea2a5">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease obligations</span></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:OperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfOC0yLTEtMS0w_66d1dff3-dff0-4b9b-8dd4-5e4914764e79">781</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:RestructuredOperatingLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfOC0zLTEtMS0w_7fdab04c-5d88-4315-a09f-5c07f0f476f7">85</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="efoi:OperatingLeaseReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfOC00LTEtMS0w_b7bb4b49-abb3-408d-a82d-d42081e7e732">68</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-3" name="us-gaap:FinanceLeaseLiability" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfOC01LTEtMS0w_7ed8cb70-64b9-4452-8a37-e489f9ff2ce6">3</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:nonNumeric><div style="margin-bottom:8pt"><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="efoi:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE4MQ_e2a7b726-db88-4b8b-96a8-148181d177a0" escape="true"><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental cash flow information related to leases for the three months ended March&#160;31, 2021 and 2020, was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:64.966%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.400%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.568%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Supplemental cash flow information</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid, net, for amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from operating leases</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:OperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjM2MjkwOWRlMWM0NzQ3NjdiNzI1NzVmNTQ1ZjZjY2Y5L3RhYmxlcmFuZ2U6MzYyOTA5ZGUxYzQ3NDc2N2I3MjU3NWY1NDVmNmNjZjlfNC0xLTEtMS0w_1ffc0036-a802-4ad3-add1-a4a379d5d3bd">136</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:OperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjM2MjkwOWRlMWM0NzQ3NjdiNzI1NzVmNTQ1ZjZjY2Y5L3RhYmxlcmFuZ2U6MzYyOTA5ZGUxYzQ3NDc2N2I3MjU3NWY1NDVmNmNjZjlfNC0zLTEtMS0w_0a22ac06-2eac-4675-b12b-64d35cfdee57">135</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from restructured leases</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="efoi:RestructuredLeasesOperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjM2MjkwOWRlMWM0NzQ3NjdiNzI1NzVmNTQ1ZjZjY2Y5L3RhYmxlcmFuZ2U6MzYyOTA5ZGUxYzQ3NDc2N2I3MjU3NWY1NDVmNmNjZjlfNS0xLTEtMS0w_74937bc8-1dd1-4780-9d46-5409c87e46ae">17</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="efoi:RestructuredLeasesOperatingLeasePayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjM2MjkwOWRlMWM0NzQ3NjdiNzI1NzVmNTQ1ZjZjY2Y5L3RhYmxlcmFuZ2U6MzYyOTA5ZGUxYzQ3NDc2N2I3MjU3NWY1NDVmNmNjZjlfNS0zLTEtMS0w_c951718e-504b-49fc-a615-d160a0694deb">17</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing cash flows from finance leases</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjM2MjkwOWRlMWM0NzQ3NjdiNzI1NzVmNTQ1ZjZjY2Y5L3RhYmxlcmFuZ2U6MzYyOTA5ZGUxYzQ3NDc2N2I3MjU3NWY1NDVmNmNjZjlfNi0xLTEtMS0w_4646f686-29b8-4839-8a44-61928313a82a">1</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjM2MjkwOWRlMWM0NzQ3NjdiNzI1NzVmNTQ1ZjZjY2Y5L3RhYmxlcmFuZ2U6MzYyOTA5ZGUxYzQ3NDc2N2I3MjU3NWY1NDVmNmNjZjlfNi0zLTEtMS0w_49bf2ba6-361a-4880-b3b5-176c4e0fc465">1</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">21</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><div style="margin-bottom:8pt;text-align:center"><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_64"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 7. <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:DebtDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTE2Nzk_fcf58415-f7a0-43aa-ab67-3f9de1e5702e" continuedAt="iea586200fff34f6fa87da1dbb98b9103" escape="true">DEBT</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="iea586200fff34f6fa87da1dbb98b9103" continuedAt="i533ff6ea8cf54e9fb68aa5a407090dcd"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Credit facilities</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On August 11, 2020, we entered into <ix:nonFraction unitRef="creditfacility" contextRef="i95512250be8748d786dbf0e2762ce66f_I20200811" decimals="INF" format="ixt-sec:numwordsen" name="efoi:DebtInstrumentNumberOfCreditFacilities" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODkwNg_c7bdd3ce-eb13-4f13-af1f-040a15016c84">two</ix:nonFraction> debt financing arrangements (together, the &#8220;Credit Facilities&#8221;). The first arrangement is an inventory financing facility (the &#8220;Inventory Facility&#8221;) pursuant to the Loan and Security Agreement (the &#8220;Inventory Loan Agreement&#8221;), between the Company and Crossroads Financial Group, LLC, a North Carolina limited liability company (the &#8220;IF Lender&#8221;). Borrowings under the original Inventory Facility were permitted up to the lower of (i) $<ix:nonFraction unitRef="usd" contextRef="i2e571f4b493a41619ace396495da7565_I20200811" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNTA1_05f75e64-ae0c-4787-b911-92a3a32e174a">3.0</ix:nonFraction> million, which amount was subsequently increased to $<ix:nonFraction unitRef="usd" contextRef="i7b82fe3611ec4325a53fba6ad96f5792_I20210420" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODc2Nw_f5fd52bd-c7ed-4d43-96af-601898c18417">3.5</ix:nonFraction>&#160;million as described below, and (ii) a borrowing base determined from time to time based on the value of the Company&#8217;s eligible inventory, valued at <ix:nonFraction unitRef="number" contextRef="i2e571f4b493a41619ace396495da7565_I20200811" decimals="INF" name="efoi:LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNjI5_888497bb-af7c-49f1-b32b-0dbf593920ae">75</ix:nonFraction>% of inventory costs or <ix:nonFraction unitRef="number" contextRef="i2e571f4b493a41619ace396495da7565_I20200811" decimals="INF" name="efoi:LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNjU0_de28b478-c0f9-498e-b9b0-1bcea22d312f">85</ix:nonFraction>% of the inventory net orderly liquidation value, less the availability reserves. The outstanding indebtedness under the Inventory Facility accrues at an annual rate equal to the greater of (i) <ix:nonFraction unitRef="number" contextRef="i2e571f4b493a41619ace396495da7565_I20200811" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfODQ5_d51ae9ef-b921-491c-a64f-a2a0073b2f76">5.75</ix:nonFraction>% and (ii) <ix:nonFraction unitRef="number" contextRef="i31365bd27b594b55bedee87e4420d604_I20200811" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfODYx_2e478c6a-970c-4419-a1db-c486224d8b62">4.00</ix:nonFraction>% plus the three (3) month LIBOR rate and is also subject to a service fee of <ix:nonFraction unitRef="number" contextRef="if63cde55efd8429db7da4e3f0431b066_D20200811-20200811" decimals="INF" name="efoi:LineOfCreditFacilityMonthlyFacilityFeePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfOTQw_7501ec89-8f4f-473d-a9c3-ec373c3a0776">1</ix:nonFraction>% per month. The annualized interest rate at March&#160;31, 2021 and December&#160;31, 2020 was <ix:nonFraction unitRef="number" contextRef="i07083608ea224ea6b028b460c546b025_I20210331" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NzkzNQ_b7cf69fe-02ad-4fe1-9584-72b73a820794">22.4</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="ia1b70191d97f4ddeb5890c1cc8664025_I20201231" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0OTE3Mg_6a640b8b-d545-4f8a-9975-68bd71f0f051">23.6</ix:nonFraction>%, respectively. The Inventory Facility&#8217;s interest and service fees combined amount is subject to a minimum monthly fee of $<ix:nonFraction unitRef="usd" contextRef="if63cde55efd8429db7da4e3f0431b066_D20200811-20200811" decimals="INF" format="ixt:numdotdecimal" name="efoi:LineOfCreditFacilityMonthlyFacilityFee" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA2MA_de52eb72-6236-4a38-bce1-d3b81b12894b">18</ix:nonFraction> thousand. There would be no breakage fee for the Company for the Inventory Facility if the Company were to refinance it with an American Bankers Association (&#8220;ABA&#8221;) equivalent institution after August 11, 2021. The Inventory Facility is secured by substantially all of the present and future assets of the Company and is also governed by an intercreditor agreement among the Company, the IF Lender and the RF Lender (defined below). The Inventory Facility matures on August 11, 2022, subject to early termination upon 90 days&#8217; notice and otherwise in accordance with the terms of the Inventory Loan Agreement. The term is automatically extended in successive one (1) year increments unless terminated by either party in accordance with the Inventory Loan Agreement. On April 20, 2021, the Company and the IF lender entered into an amendment to the Inventory Loan Agreement to increase the maximum amount that may be available to the Company from $<ix:nonFraction unitRef="usd" contextRef="i2e571f4b493a41619ace396495da7565_I20200811" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0ODc5NQ_05f75e64-ae0c-4787-b911-92a3a32e174a">3.0</ix:nonFraction> million previously to $<ix:nonFraction unitRef="usd" contextRef="i7b82fe3611ec4325a53fba6ad96f5792_I20210420" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NzkwMw_291aca93-8d76-4f09-ade1-5d260b4566e3">3.5</ix:nonFraction> million, subject to the borrowing base as set forth in the Inventory Loan Agreement. Please also refer to Note 11, &#8220;Subsequent Events&#8221;.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The second arrangement is a receivables financing facility (the &#8220;Receivables Facility&#8221;) pursuant to the Loan and Security Agreement (the &#8220;Receivables Loan Agreement&#8221;) between the Company and Factors Southwest L.L.C. (d/b/a FSW Funding), an Arizona limited liability company (the &#8220;RF Lender&#8221;). Borrowings under the Receivables Facility are permitted up to the lower of (i) $<ix:nonFraction unitRef="usd" contextRef="if324298a2a9a437189fe449d8254b842_I20200811" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjE5Mw_4cc8dc7b-a90a-4d33-8cbe-f50233896e7c">2.5</ix:nonFraction> million or (ii) a borrowing base determined from time to time based on the value of the Company&#8217;s eligible accounts receivable, valued at <ix:nonFraction unitRef="number" contextRef="if324298a2a9a437189fe449d8254b842_I20200811" decimals="INF" name="efoi:LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjMyNg_9037148d-5a0d-4c5d-818b-2c666cba3cd4">90</ix:nonFraction>% of the face value of such accounts receivable, less availability reserves, if any. Interest on outstanding indebtedness under the Receivables Facility accrues at an annual rate equal to (i) the highest prime rate announced from time to time by the Wall Street Journal plus (ii) <ix:nonFraction unitRef="number" contextRef="i072f5a4e47054886801ffd3c4729ed59_I20200811" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjYwNw_2ea16353-45d9-4288-a465-c346db407165">2</ix:nonFraction>%. At March&#160;31, 2021 and December&#160;31, 2020, the annualized interest rate was <ix:nonFraction unitRef="number" contextRef="i666c20d9cab542bda9f87104f59ce94a_I20210331" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0Nzk0MQ_79343382-f786-46de-ab46-e8b43b701f59">7.6</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="i536d2633727441b68c90b3d2772253ad_I20201231" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0OTI4Ng_5e3d841e-3891-48ff-94c0-6eceeeec589a">7.9</ix:nonFraction>%, respectively. The annualized interest rate on the collateral management fee was <ix:nonFraction unitRef="number" contextRef="i666c20d9cab542bda9f87104f59ce94a_I20210331" decimals="3" name="efoi:DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0Nzk0Nw_37bbf227-e966-42a1-a7df-df3d69f7a867"><ix:nonFraction unitRef="number" contextRef="i536d2633727441b68c90b3d2772253ad_I20201231" decimals="3" name="efoi:DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0Nzk0Nw_d2ebb426-fb3c-4c41-878b-95da78f75ff4">6</ix:nonFraction></ix:nonFraction>% at both March&#160;31, 2021 and December&#160;31, 2020. The Receivables Facility is also secured by substantially all of the present and future assets of the Borrower and is also governed by an intercreditor agreement among the Company, the IF Lender and the RF Lender. A $<ix:nonFraction unitRef="usd" contextRef="i977b6602441d4c5895543f2422ae1a6b_D20200811-20200811" decimals="INF" format="ixt:numdotdecimal" name="efoi:LineOfCreditFacilityMonthlyFacilityFee" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjgyNw_ad564128-401e-444a-9540-848ec3eadcea">25</ix:nonFraction> thousand, or <ix:nonFraction unitRef="number" contextRef="i977b6602441d4c5895543f2422ae1a6b_D20200811-20200811" decimals="INF" name="efoi:LineOfCreditFacilityMonthlyFacilityFeePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjgzNA_63e094fd-afc9-4937-b98e-548e3e4690c1">1</ix:nonFraction>%, facility fee was charged at closing. There would be no breakage fee for the Company for the Receivables Facility if the Company were to refinance it with an ABA equivalent institution. The Receivables Facility matures on August 11, 2022, subject to early termination in accordance with the terms of the Receivables Loan Agreement; provided that the term is automatically extended in successive one (1) year increments unless terminated by either party in accordance with the Receivables Loan Agreement.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Borrowings under the Inventory Facility were $<ix:nonFraction unitRef="usd" contextRef="i07083608ea224ea6b028b460c546b025_I20210331" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LinesOfCreditCurrent" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTYzOTc2OA_473be294-507b-4d67-9eb2-b198dde3b534">2.7</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="ia1b70191d97f4ddeb5890c1cc8664025_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LinesOfCreditCurrent" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0OTU3MQ_2933c661-d56a-4a77-a16b-8e2c300b0615">1.3</ix:nonFraction> million at March&#160;31, 2021 and December&#160;31, 2020, respectively. Borrowings under the Receivables Facility were $<ix:nonFraction unitRef="usd" contextRef="i666c20d9cab542bda9f87104f59ce94a_I20210331" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LinesOfCreditCurrent" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTYzOTgyMw_b673433a-9332-4eba-878c-b25f390192f0">0.7</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="i536d2633727441b68c90b3d2772253ad_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LinesOfCreditCurrent" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0OTU4OQ_76a434e0-7ad4-4387-854a-7a0247d86d68">1.0</ix:nonFraction> million at March&#160;31, 2021 and December&#160;31, 2020, respectively. These facilities are recorded in the Condensed Consolidated Balance Sheet as of March&#160;31, 2021 as a current liability under the caption &#8220;Credit line borrowings.&#8221; Outstanding balances include unamortized net issuance costs totaling $<ix:nonFraction unitRef="usd" contextRef="i07083608ea224ea6b028b460c546b025_I20210331" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:UnamortizedDebtIssuanceExpense" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0MDA3MA_d263a320-04cd-4cbf-9ce0-a4961b29c55f">0.1</ix:nonFraction> million for the Inventory Facility and $<ix:nonFraction unitRef="usd" contextRef="i666c20d9cab542bda9f87104f59ce94a_I20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:UnamortizedDebtIssuanceExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0MDEwNQ_f8781780-914d-441e-8f6b-a496b361570f">30</ix:nonFraction> thousand for the Receivables Facility as of March&#160;31, 2021, and $<ix:nonFraction unitRef="usd" contextRef="ia1b70191d97f4ddeb5890c1cc8664025_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:UnamortizedDebtIssuanceExpense" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0OTcyNg_a6f1d0e2-8f8e-4b9b-a447-55f09788a49a">0.1</ix:nonFraction> million for the Inventory Facility and $<ix:nonFraction unitRef="usd" contextRef="i536d2633727441b68c90b3d2772253ad_I20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:UnamortizedDebtIssuanceExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0OTc0Mw_bd11b734-17ad-4530-bc06-d261ac0c711f">40</ix:nonFraction> thousand for the Receivables Facility as of December&#160;31, 2020.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Credit Facilities replaced the Austin Credit Facility that was entered into on December 11, 2018 and was secured by a lien on our assets. The Austin Credit Facility was a <ix:nonNumeric contextRef="i9c2fbcb4bfb34d568bc852c17bd445d1_D20181211-20181211" format="ixt-sec:durwordsen" name="us-gaap:LineOfCreditFacilityExpirationPeriod" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwMzUzNg_3cb9d29f-7e65-4d39-9a5c-f05ac43eec8c">three year</ix:nonNumeric>, $<ix:nonFraction unitRef="usd" contextRef="ib4ec9ce606ec4a87aed99ad8f20235e6_I20181211" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0MDc1OA_3ed34997-d6f5-483b-a73d-70c6ddb4a692">5.0</ix:nonFraction> million revolving line of credit. Interest on advances under the line was due monthly at the &#8220;Prime Rate,&#8221; as published by the Wall Street Journal from time to time, plus a margin of <ix:nonFraction unitRef="number" contextRef="i2830bb7eb7414664948bc6fcb518c1fb_D20181211-20181211" decimals="2" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzU5Nw_be711f7e-047f-46ff-a76d-a472be5beb85">2</ix:nonFraction>%. The borrowing rate as of March 31, 2020 was <ix:nonFraction unitRef="number" contextRef="i41ebe710d00c457298fbe55e2f33697c_I20200331" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwMzUxNg_491eed00-1342-4c40-83d4-ad35bee9fe29">5.25</ix:nonFraction>%. Additionally, an annual facility fee of <ix:nonFraction unitRef="number" contextRef="i9c2fbcb4bfb34d568bc852c17bd445d1_D20181211-20181211" decimals="INF" name="us-gaap:LineOfCreditFacilityCommitmentFeePercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzcxNA_0c651bf0-eb89-48b4-b342-a5f97a8aa578">1</ix:nonFraction>% on the entire $<ix:nonFraction unitRef="usd" contextRef="ib4ec9ce606ec4a87aed99ad8f20235e6_I20181211" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzczMQ_3ed34997-d6f5-483b-a73d-70c6ddb4a692">5.0</ix:nonFraction> million amount of the Austin Credit Facility was due at the beginning of each of the <ix:nonNumeric contextRef="i9c2fbcb4bfb34d568bc852c17bd445d1_D20181211-20181211" format="ixt-sec:durwordsen" name="efoi:LineOfCreditFacilityAnnualFacilityFeePeriod" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzgxMQ_8690dfb5-66fe-4850-a385-4c291369e005">three years</ix:nonNumeric> that the Austin Credit Facility was outstanding and a <ix:nonFraction unitRef="number" contextRef="i9c2fbcb4bfb34d568bc852c17bd445d1_D20181211-20181211" decimals="INF" name="efoi:LineOfCreditFacilityCollateralManagementFee" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzg2OA_2b964d7e-c1a6-4b16-872c-0ae6ce217590">0.5</ix:nonFraction>% collateral management fee on the average outstanding loan balance was payable monthly. Borrowings under the Austin Credit Facility were $<ix:nonFraction unitRef="usd" contextRef="i41ebe710d00c457298fbe55e2f33697c_I20200331" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LinesOfCreditCurrent" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwMzU0Nw_0cde2641-7ea6-41bc-b762-45dfe8bf4e9e">0.8</ix:nonFraction> million at March&#160;31, 2020. On August 11, 2020, we paid </span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">22</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="i533ff6ea8cf54e9fb68aa5a407090dcd" continuedAt="i727db909d61e43e9a980aae4a14f2ed0"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$<ix:nonFraction unitRef="usd" contextRef="i953386c333504f1cba95b8d43eb5009b_D20200811-20200811" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PaymentsOfDebtExtinguishmentCosts" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNDE3MQ_d5837830-22a4-4740-af05-dd145fda6d96">1.4</ix:nonFraction> million to close the Austin Credit Facility which included a $<ix:nonFraction unitRef="usd" contextRef="id888f8edb49e460fbb943b31d7eb5988_I20200811" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentFeeAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNDIyNw_5cd53186-d48c-491c-82b4-6ed67524656d">100</ix:nonFraction> thousand termination fee. Additionally, we wrote off $<ix:nonFraction unitRef="usd" contextRef="i953386c333504f1cba95b8d43eb5009b_D20200811-20200811" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WriteOffOfDeferredDebtIssuanceCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNDI3NA_fa26fccc-3ef2-4665-aa2b-1376528afaa4">59</ix:nonFraction> thousand of the remaining related debt acquisition costs. For additional information regarding the Austin Credit Facility, please refer to Note 9, &#8220;Debt,&#8221; included under Item 8, &#8220;Financial Statements and Supplementary Data,&#8221; of our 2020 Annual Report.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For additional information regarding the Credit Facilities, please refer to Part II, Item 5, &#8220;Other Information,&#8221; included in our Quarterly Report on Form 10-Q for the quarterly period ended June 30, 2020, filed on August 13, 2020.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Convertible Notes</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On March&#160;29, 2019, we issued $<ix:nonFraction unitRef="usd" contextRef="i60bf27a363d84282adb85969c19c38da_D20190329-20190329" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfSubordinatedLongTermDebt" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNTQ0Mg_f8d4c1e9-6168-4e19-a6f5-6f773054b17c">1.7</ix:nonFraction> million aggregate principal amount of subordinated convertible promissory notes (the &#8220;Convertible Notes&#8221;) to certain investors in a private placement exempt from the registration requirements of the Securities Act of 1933, as amended. The Convertible Notes bore interest at a rate of <ix:nonFraction unitRef="number" contextRef="i1fe3b1abd2b845b58083a94e518739db_D20190329-20190630" decimals="INF" name="us-gaap:DebtConversionOriginalDebtInterestRateOfDebt" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY1Mjg3OA_df910102-7a19-484d-85f5-d0616f8f90cc">5</ix:nonFraction>% per annum until June 30, 2019 and at a rate of <ix:nonFraction unitRef="number" contextRef="i1f963ba5a5e2497b89de65c65bf1005d_D20190701-20200116" decimals="INF" name="us-gaap:DebtConversionOriginalDebtInterestRateOfDebt" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNTgwMQ_1f6fcecb-c63d-4dd7-b2b1-27db4722b232">10</ix:nonFraction>% thereafter. Pursuant to their terms, on January&#160;16, 2020, following approval by our stockholders of certain amendments to the Certificate of Incorporation, the principal amount of all of the Convertible Notes and</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">the accumulated interest thereon ($<ix:nonFraction unitRef="usd" contextRef="i77ebeec1a11147f4bddd50d2befab70b_I20200116" decimals="-5" format="ixt:numdotdecimal" name="efoi:AccumulatedInterestOnSubordinatedDebt" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNjAzNA_21983044-3282-4a29-b3e2-bc13880bb6e4">0.1</ix:nonFraction>&#160;million), which totaled $<ix:nonFraction unitRef="usd" contextRef="ib1abd927789c4c3db262bebaaf83998e_D20200116-20200116" decimals="-5" format="ixt:numdotdecimal" name="efoi:NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNjExNQ_c359a33e-3873-4ef2-aaa5-0ec9bd3c6c77">1.8</ix:nonFraction> million, were converted at a conversion price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i77ebeec1a11147f4bddd50d2befab70b_I20200116" decimals="2" name="us-gaap:DebtInstrumentConvertibleConversionPrice1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNjE1OQ_c68191af-652d-4691-bbeb-981e6078b946">0.67</ix:nonFraction> per share into an aggregate of <ix:nonFraction unitRef="shares" contextRef="ib1abd927789c4c3db262bebaaf83998e_D20200116-20200116" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjE5OTAyMzI3NjU2NA_87acb089-6c04-4137-ada2-6f3e4e72a3c1">2,709,018</ix:nonFraction> shares of the Company&#8217;s Series A Convertible Preferred Stock, par value <ix:nonFraction unitRef="usdPerShare" contextRef="i77ebeec1a11147f4bddd50d2befab70b_I20200116" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjE5OTAyMzI3NjU1Mw_16d02c13-761d-4e7b-a665-2ae5629a92da">0.0001</ix:nonFraction> per share (&#8220;Series A Preferred Stock&#8221;), which is convertible on a one-for-five basis into shares of our common stock. During the year ended December&#160;31, 2020, <ix:nonFraction unitRef="shares" contextRef="ic3472714a7ee4d70a2b3939e8552b242_D20200101-20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ConversionOfStockSharesConverted1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjE5OTAyMzI3NTgwNg_f3f86227-b759-4081-9ef3-ade4dd6ee944">111,548</ix:nonFraction> shares of the Series A Preferred Stock were converted into <ix:nonFraction unitRef="shares" contextRef="i992eeeca44564c2e8de058eec5fd99d2_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNjQ4Ng_3283338b-e6b0-4a73-a85b-837504f42f3a">22,310</ix:nonFraction> shares of common stock. No conversions occurred during the three months ended March&#160;31, 2021. On April 1, 2021, <ix:nonFraction unitRef="shares" contextRef="i00ea0eba4f7d4d4f97ed3eac19a2d4a6_D20210401-20210401" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ConversionOfStockSharesConverted1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0MTUzNA_b3f1c1de-2ed1-41a6-932b-7e83fd6165ab">1,721,023</ix:nonFraction> shares of Series A Preferred Stock were converted into <ix:nonFraction unitRef="shares" contextRef="i680c85489eaa462b88497e2441ad4b39_I20210401" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0MTU5Mw_b39d8c2f-ffdb-40ac-af3a-2c7447217ca2">344,205</ix:nonFraction> shares of common stock. Please also refer to Note 11, &#8220;Subsequent Events&#8221;. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The purchase agreement related to the Convertible Notes contains customary representations and warranties and provides for resale registration rights with respect to the shares of our common stock issuable upon conversion of the Series A Preferred Stock. Please also refer to Note 9, &#8220;Stockholders&#8217; Equity&#8221;.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Iliad Note </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On November&#160;25, 2019, we entered into a note purchase agreement (the &#8220;Iliad Note Purchase Agreement&#8221;) with Iliad Research and Trading, L.P. (&#8220;Iliad&#8221;) pursuant to which the Company sold and issued to Iliad a promissory note in the principal amount of $<ix:nonFraction unitRef="usd" contextRef="i60c86ac561af49569ab990cbc12cc983_I20191125" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentFaceAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNzE3NQ_8c8f5bc8-c68f-4a89-9321-01ea803c561d">1.3</ix:nonFraction> million (the &#8220;Iliad Note&#8221;). The Iliad Note was issued with an original issue discount of $<ix:nonFraction unitRef="usd" contextRef="i60c86ac561af49569ab990cbc12cc983_I20191125" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentUnamortizedPremium" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNzI1OQ_4421480d-2072-45e0-b7f7-87bf4f3341f0">142</ix:nonFraction> thousand and Iliad paid a purchase price of $<ix:nonFraction unitRef="usd" contextRef="i2ccc45ecf1bd477f92e514d8e5da122c_D20191125-20191125" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfDebt" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNzI5Nw_d4b55141-1f81-4d32-8a62-a320e9bfdea5">1.1</ix:nonFraction> million for the issuance of the Iliad Note, after deduction of $<ix:nonFraction unitRef="usd" contextRef="i60c86ac561af49569ab990cbc12cc983_I20191125" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredFinanceCostsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNzM1NQ_6db43f55-ef32-4d58-b9a6-5c572dc798ad">15</ix:nonFraction> thousand of Iliad transaction expenses. </span></div><div><span><br/></span></div><div style="margin-bottom:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2020, we repaid the outstanding balance on the Iliad Note in full prior to its maturity date of November&#160;24, 2021. Remaining debt and original issue discount costs of $<ix:nonFraction unitRef="usd" contextRef="i64e293c75b2142608d8349f94ac4c621_D20201201-20201201" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:WriteOffOfDeferredDebtIssuanceCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0MzkzMA_4f4d3290-2e92-43e4-85b5-3a3384396ae2">117</ix:nonFraction> thousand were written off at that time. The Iliad Note accrued interest at <ix:nonFraction unitRef="number" contextRef="i60c86ac561af49569ab990cbc12cc983_I20191125" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0Mzk5NQ_d2679153-07dc-45f9-b43b-a7cf32914b59">8</ix:nonFraction>% per annum, compounded daily, on the outstanding balance.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the Iliad Note Purchase Agreement and the Iliad Note, we had, among other things, agreed that, until the Iliad Note was repaid <ix:nonFraction unitRef="number" contextRef="i2ccc45ecf1bd477f92e514d8e5da122c_D20191125-20191125" decimals="2" name="efoi:DebtInstrumentProceedsToBePaidToLenderPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NDAzMg_e643012a-2db3-497d-a164-d31ec29ab72e">10</ix:nonFraction>% of gross proceeds the Company received from the sale of our common stock or other equity must be paid to Iliad and applied to reduce the outstanding balance of the Iliad Note. In accordance with the terms of the Iliad Note, <ix:nonFraction unitRef="number" contextRef="i2ccc45ecf1bd477f92e514d8e5da122c_D20191125-20191125" decimals="2" name="efoi:DebtInstrumentProceedsToBePaidToLenderPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NDAzOA_e643012a-2db3-497d-a164-d31ec29ab72e">10</ix:nonFraction>% of the gross proceeds from the January 2020 Equity Offering ($<ix:nonFraction unitRef="usd" contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOrSaleOfEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NDA1NA_f368d20a-cf71-4873-8134-4ac38bd27c28">275</ix:nonFraction> thousand) were used to make payments on the Iliad Note, of which $<ix:nonFraction unitRef="usd" contextRef="i5b14b389eebc47d5bcc51f2dd4812ce8_D20200101-20200131" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RepaymentsOfNotesPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NDA3Mw_6b15ab86-66a7-46d1-8153-a25f0d995105">226</ix:nonFraction> thousand went towards the outstanding principal amount. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The total liability for the Iliad Note, excluding financing fees, was $<ix:nonFraction unitRef="usd" contextRef="if2f8ae782a86447ea1cd2368f97fa536_I20200331" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentCarryingAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODc4MQ_99acac99-a2aa-454c-90b5-85d11c0b4749">0.9</ix:nonFraction>&#160;million at March 31, 2020. Unamortized loan discount and debt issuance costs were $<ix:nonFraction unitRef="usd" contextRef="if2f8ae782a86447ea1cd2368f97fa536_I20200331" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODc5NQ_4594c98e-12e0-4a17-adcb-a833fce30b05">0.2</ix:nonFraction>&#160;million at March 31, 2020.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Streeterville Note</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April 27, 2021, we entered into a note purchase agreement (the &#8220;Streeterville Note Purchase Agreement&#8221;) with Streeterville Capital, LLC (&#8220;Streeterville&#8221;) pursuant to which we sold and issued to Streeterville a promissory note in the principal amount of approximately $<ix:nonFraction unitRef="usd" contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentFaceAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODgwOQ_668b22de-cb5e-43de-bdd9-518d466b9378">1.7</ix:nonFraction>&#160;million (the &#8220;Streeterville Note&#8221;). The Streeterville Note was issued with an original issue discount of $<ix:nonFraction unitRef="usd" contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentUnamortizedDiscount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODgyMw_6b204abc-f1a5-4e43-89dd-248caaef6b17">194</ix:nonFraction>&#160;thousand and Streeterville paid a purchase price of $<ix:nonFraction unitRef="usd" contextRef="i50ba0c2a78a741cbbd1175c3c8e51ca4_D20210427-20210427" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfDebt" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODgzOA_5c4896c9-0e0c-4333-b6e4-99a44ecabc92">1.5</ix:nonFraction>&#160;million for the Streeterville Note, after deduction of $<ix:nonFraction unitRef="usd" contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredFinanceCostsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODg1Mg_bbd6234f-222d-409e-89dd-5dd535c94270">15</ix:nonFraction>&#160;thousand of Streeterville transaction expenses. See also Note 11, &#8220;Subsequent Events&#8221;.</span></div></ix:continuation><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">23</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%"><ix:continuation id="i727db909d61e43e9a980aae4a14f2ed0" continuedAt="ifb619211ca60481daa0a394ee785b9b1">PPP Loan</ix:continuation></span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"><ix:continuation id="ifb619211ca60481daa0a394ee785b9b1">On April&#160;17, 2020, the Company was granted a loan from KeyBank National Association (&#8220;KeyBank&#8221;) in the amount of approximately $<ix:nonFraction unitRef="usd" contextRef="idf0470d514ad4ac296bafa544697e13e_D20200417-20200417" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromLoanOriginations1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA2MjA_f47aa303-ab2d-42c9-b5bd-680bbe979654">795</ix:nonFraction>&#160;thousand, pursuant to the Paycheck Protection Program (&#8220;PPP&#8221;) under Division A of the Coronavirus Aid, Relief and Economic Security Act (the &#8220;CARES Act&#8221;), which was enacted on March 27, 2020. The funds were received on April 20, 2020 and accrued interest at a rate of <ix:nonFraction unitRef="number" contextRef="i8e1357078d1b44c5a35a856fb2002e10_I20200417" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODg4MQ_81f62b41-ead5-4f79-abd4-8952813c0730">1.0</ix:nonFraction>% per annum. At December 31, 2020, $<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="efoi:PaymentProtectionProgramCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODg4Nw_976247fc-67f3-4f46-8543-f0427e44ba41">529</ix:nonFraction>&#160;thousand was classified as short-term debt and $<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-3" format="ixt:numdotdecimal" name="efoi:PaymentProtectionProgramNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODg2Ng_71f192c7-f0ba-421d-b94b-d3ffcdf38a9e">266</ix:nonFraction>&#160;thousand was classified as long-term debt on the Company&#8217;s Consolidated Balance Sheet. Under the terms of the PPP, certain amounts of the loan may be forgiven if they are used for qualifying expenses as described in the CARES Act. The entire principal balance and interest were forgiven by the Small Business Administration on February 11, 2021. The $<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NzMxOQ_b763f0fa-647a-4a1a-a1f9-a0b657e5f698">801</ix:nonFraction>&#160;thousand forgiveness income was recorded as other income in the Consolidated Statements of Operations during the three months ended March&#160;31, 2021.</ix:continuation> </span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_67"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 8. <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:IncomeTaxDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMjAxMw_aea3d10d-6585-46b3-92e5-950e33ba7190" continuedAt="ie057dd13311c4d00806bead50121b1a9" escape="true">INCOME TAXES</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="ie057dd13311c4d00806bead50121b1a9"><div style="padding-right:4.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the operating loss incurred during each of the three months ended March&#160;31, 2021 and 2020, and after the application of the annual limitation set forth under Section 382 of the Internal Revenue Code of 1986, as amended (the &#8220;IRC&#8221;), it was not necessary to record a provision for U.S. federal income tax. </span></div><div style="padding-right:4.5pt"><span><br/></span></div><div style="padding-right:4.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At March&#160;31, 2021 and December&#160;31, 2020, we had a full valuation allowance recorded against our deferred tax assets. </span></div><div style="padding-right:4.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The valuation allowance was recorded due to uncertainties related to our ability to realize the deferred tax assets, primarily consisting of certain net operating loss carry-forwards. The valuation allowance is based on management&#8217;s estimates of taxable income by jurisdiction and the periods over which the deferred tax assets will be recoverable.</span></div><div style="padding-right:4.5pt"><span><br/></span></div><div style="padding-right:4.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December&#160;31, 2020, we had a net operating loss carry-forward of approximately $<ix:nonFraction unitRef="usd" contextRef="i2a141a80b8fe446780e60683d3a297dc_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfOTg1_84b51684-55d5-4741-ae0b-040fe9c2b27d">115.9</ix:nonFraction> million for federal income tax purposes ($<ix:nonFraction unitRef="usd" contextRef="i69bb06e237ad42a589c2f56452f3777b_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMTAyMQ_a774c7ce-2e4c-49ac-9df9-7f9bcb12a691">72.3</ix:nonFraction> million for state and local income tax purposes). However, due to changes in our capital structure, approximately $<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-5" format="ixt:numdotdecimal" name="efoi:DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMTEzMA_93d88d1a-b049-4c6f-9b94-9cece6e7de16">61.5</ix:nonFraction> million of the $<ix:nonFraction unitRef="usd" contextRef="i2a141a80b8fe446780e60683d3a297dc_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwards" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMTE0MA_84b51684-55d5-4741-ae0b-040fe9c2b27d">115.9</ix:nonFraction> million is available after the application of IRC Section 382 limitations. As a result of the Tax Cuts and Jobs Act of 2017 (the &#8220;Tax Act&#8221;), net operating loss carry-forwards generated in tax years beginning after December 31, 2017 can only offset 80% of taxable income and can be carried forward indefinitely. The $<ix:nonFraction unitRef="usd" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OperatingLossCarryforwards" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMTA5OTUxMTYyOTgzMQ_22db118c-9a95-4da8-a037-31a67c3431ab">7.1</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="ia14618e080534548a2781f9ad7ec8f84_I20191231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:OperatingLossCarryforwards" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMTA5OTUxMTYyOTgzNw_661ec84d-50ed-4de5-89a6-a815d582a80a">8.3</ix:nonFraction> million in net operating losses generated in 2020 and 2019, respectively, will be subject to the new limitations under the Tax Act. If not utilized, the carry-forwards generated prior to December 31, 2017 of $<ix:nonFraction unitRef="usd" contextRef="i3b3aa389d6fc49bfa1333e99d3b82b88_I20171231" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMTY2MA_597079fa-6fdf-4d51-ac69-68ca61f073f3">37.3</ix:nonFraction> million will begin to expire in 2021 for federal purposes and have begun to expire for state and local purposes. For a full discussion of the estimated restrictions on our utilization of net operating loss carry-forwards, please refer to Note 12, &#8220;Income Taxes,&#8221; included under Item 8, &#8220;Financial Statements and Supplementary Data,&#8221; of our 2020 Annual Report.</span></div></ix:continuation><div style="margin-bottom:6pt;padding-right:4.5pt"><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_70"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 9.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTYyOA_16606cd3-46df-4888-b7bc-400f7364a17a" continuedAt="i786dbb4af87c48a29727a2dcf4af3d3b" escape="true">STOCKHOLDERS&#8217; EQUITY</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i786dbb4af87c48a29727a2dcf4af3d3b" continuedAt="i8696d20590bc4333b1830478e8f01681"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">1-for-5 Reverse Stock Split</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On June 11, 2020, in accordance with previous stockholder approval, our Board of Directors effected a 1-for-5 reverse stock split of the Company&#8217;s common stock, par value $<ix:nonFraction unitRef="usdPerShare" contextRef="i66985daeedc64cd7ab86f489ac45819c_I20200611" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTYzOTg0OA_c78535c0-ffa3-4b52-a19b-61af4e2ce49c">0.0001</ix:nonFraction> per share. The reverse stock split became effective at the Effective Time upon the filing of the Certificate of Amendment to the Certificate of Incorporation with the Delaware Secretary of State. At the Effective Time, every five shares of common stock issued and outstanding automatically combined into one validly issued, fully paid and non-assessable share of common stock. No fractional shares were issued as a result of the reverse stock split. The fractional shares were settled in cash in an amount not material to the Company. The $<ix:nonFraction unitRef="usdPerShare" contextRef="i66985daeedc64cd7ab86f489ac45819c_I20200611" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTYzOTg1Mg_c78535c0-ffa3-4b52-a19b-61af4e2ce49c">0.0001</ix:nonFraction> par value per share of common stock and other terms of the common stock were not affected by the reverse stock split. The number of authorized shares of common stock under the Certificate of Incorporation remained unchanged at <ix:nonFraction unitRef="shares" contextRef="i66985daeedc64cd7ab86f489ac45819c_I20200611" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:CommonStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTYzOTg1Ng_359bb833-1538-48f3-9605-47dddb504b48">50,000,000</ix:nonFraction> shares. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The current financial statements, as well as prior period financial statements, have been retroactively adjusted to reflect the reverse stock split. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Proportional adjustments were made to the conversion and exercise prices of our outstanding warrants and stock options, and to the number of shares issued and issuable under our stock incentive plans in connection with the reverse stock split. The current financial statements as well as prior period financial statements have been retroactively adjusted to reflect the reverse stock split. Preferred shares outstanding were not affected by the reverse stock split and, as such, those shares have not been adjusted.</span></div></ix:continuation><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">24</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="i8696d20590bc4333b1830478e8f01681" continuedAt="i15f864a711874584a1a10f202785dc8b"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The reverse stock split was effected solely to increase the per share trading price of the common stock to satisfy the $1.00</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">minimum bid price requirement pursuant to Nasdaq Listing Rule 5550(a)(2) for continued listing on Nasdaq.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The common stock began trading on Nasdaq on a split-adjusted basis at the opening of trading on June 12, 2020.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Preferred Stock</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the terms of the Convertible Notes, on January 16, 2020, following approval by our stockholders of certain amendments to the Certificate of Incorporation, the principal amount of all of the Convertible Notes and the accumulated interest thereon at the date of conversion (totaling $<ix:nonFraction unitRef="usd" contextRef="ib1abd927789c4c3db262bebaaf83998e_D20200116-20200116" decimals="-5" format="ixt:numdotdecimal" name="efoi:NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTYzOTkwMA_c359a33e-3873-4ef2-aaa5-0ec9bd3c6c77">1.8</ix:nonFraction> million) were converted at a conversion price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i77ebeec1a11147f4bddd50d2befab70b_I20200116" decimals="2" name="us-gaap:DebtInstrumentConvertibleConversionPrice1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTYzOTkwNQ_c68191af-652d-4691-bbeb-981e6078b946">0.67</ix:nonFraction> per share into an aggregate of <ix:nonFraction unitRef="shares" contextRef="ib1abd927789c4c3db262bebaaf83998e_D20200116-20200116" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTYzOTkwOQ_7b0e42be-c343-436b-84fd-10868508598f">2,709,018</ix:nonFraction> shares of the Company&#8217;s Series A Preferred Stock, which is convertible on a one-for-five basis into shares of our common stock. During the year ended December&#160;31, 2020, <ix:nonFraction unitRef="shares" contextRef="ic3472714a7ee4d70a2b3939e8552b242_D20200101-20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ConversionOfStockSharesConverted1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDE1Ng_b75d30ac-8fdc-433f-a0e5-2594a504b836">111,548</ix:nonFraction> shares of the Series A Preferred Stock were converted into <ix:nonFraction unitRef="shares" contextRef="i992eeeca44564c2e8de058eec5fd99d2_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDIxOQ_3283338b-e6b0-4a73-a85b-837504f42f3a">22,310</ix:nonFraction> shares of common stock. No conversions occurred during the three months ended March&#160;31, 2021. On April 1, 2021, <ix:nonFraction unitRef="shares" contextRef="i00ea0eba4f7d4d4f97ed3eac19a2d4a6_D20210401-20210401" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ConversionOfStockSharesConverted1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDMyMw_b3f1c1de-2ed1-41a6-932b-7e83fd6165ab">1,721,023</ix:nonFraction> shares of Series A Preferred Stock were converted into <ix:nonFraction unitRef="shares" contextRef="i680c85489eaa462b88497e2441ad4b39_I20210401" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDM4Mg_b39d8c2f-ffdb-40ac-af3a-2c7447217ca2">344,205</ix:nonFraction> shares of common stock. Please also refer to Note 11, &#8220;Subsequent Events&#8221;.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Series A Preferred Stock was created by the filing of a Certificate of Designation with the Secretary of State of the State of Delaware on March 29, 2019, which designated <ix:nonFraction unitRef="shares" contextRef="i5017ffc2879e4fab9f6a78f3dd698432_I20190329" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMzI5ODUzNDg5ODkyMg_f81607a1-d6ec-42b2-bf5a-6788f8b77fbc">2,000,000</ix:nonFraction> shares of the Company&#8217;s preferred stock, par value $<ix:nonFraction unitRef="usdPerShare" contextRef="i09ca929212e44528ab26cccc51ad1c99_I20190329" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMzA5OQ_e75fb466-e00d-4173-8b10-6eec3aeb0546">0.0001</ix:nonFraction> per share, as Series A Preferred Stock (the &#8220;Original Series A Certificate of Designation&#8221;). On January 15, 2020 with prior stockholder approval, the Company amended the Certificate of Incorporation to increase the number of authorized shares of preferred stock to <ix:nonFraction unitRef="shares" contextRef="i25e4e149c9e645cea2591a854500fb8b_I20200115" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDQ3Mw_c0e0bece-23f7-4b49-9420-495089572c9c">5,000,000</ix:nonFraction>. The Original Series A Certificate of Designation was also amended on January 15, 2020, to increase the number of shares of preferred stock designated as Series A Preferred Stock to <ix:nonFraction unitRef="shares" contextRef="iea1223b775ca41c6a6e0e6f61ac4d3d0_I20200115" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:PreferredStockSharesAuthorized" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMzI5ODUzNDg5OTI1MQ_26ae92de-cffe-49fe-ae2e-8e410e07b67b">3,300,000</ix:nonFraction> (the Original Series A Certificate of Designation, as so amended, the &#8220;Series A Certificate of Designation&#8221;). </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the Series A Certificate of Designation, each holder of outstanding shares of Series A Preferred Stock is entitled to vote with holders of outstanding shares of common stock, voting together as a single class, with respect to any and all matters presented to the stockholders of the Company for their action or consideration, except as provided by law. In any such vote, each share of Series A Preferred Stock shall entitle its holder to a number of votes equal to <ix:nonFraction unitRef="number" contextRef="i19e09cdb27e34ffdaa5038b9f496b299_D20200116-20200116" decimals="4" name="efoi:PercentageOfSeriesAPreferredStockEligibleToVote" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDQ4Mg_3daa9d16-07e3-4ea3-b2e8-464ddecbbb5e">11.07</ix:nonFraction>% of the number of shares of common stock into which such share of Series A Preferred Stock is convertible.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Series A Preferred Stock (a) has a preference upon liquidation equal to $<ix:nonFraction unitRef="usdPerShare" contextRef="i77ebeec1a11147f4bddd50d2befab70b_I20200116" decimals="2" name="us-gaap:DebtInstrumentConvertibleConversionPrice1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDQ4OA_c68191af-652d-4691-bbeb-981e6078b946">0.67</ix:nonFraction> per share and then participates on an as-converted basis with the common stock with respect to any additional distributions, (b) shall receive any dividends declared and payable on our common stock on an as-converted basis, and (c) is convertible at the option of the holder into shares of our common stock on a one-for-five basis. On March 29, 2019, the Company also filed a Certificate of Elimination with respect to its authorized, but unissued, Series A Participating Preferred Stock, to return such shares to the status of undesignated preferred stock available for designation as Series A Preferred Stock.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The purchase agreement related to the Convertible Notes contains customary representations and warranties and provides for resale registration rights with respect to the shares of our common stock issuable upon conversion of the Series A Preferred Stock.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">January 2020 Equity Offering</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;text-decoration:underline">Issuance of Common Stock and Warrants</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In January 2020, we completed a registered direct offering for the sale of <ix:nonFraction unitRef="shares" contextRef="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMzI5ODUzNDg5OTM0Mg_76495a5d-f9dd-432e-97eb-c92216e92235">688,360</ix:nonFraction> shares of our common stock to certain institutional investors, at a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i80309835f493449a847d541559d6ff1d_I20200131" decimals="2" name="us-gaap:SaleOfStockPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMzg0ODI5MDcxMzIyNA_52bb438d-a122-4806-baca-53d5f85f3ac8">3.37</ix:nonFraction> per share. We also sold, to the same institutional investors, warrants to purchase up to <ix:nonFraction unitRef="shares" contextRef="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131" decimals="INF" format="ixt:numdotdecimal" name="efoi:ClassOfWarrantOrRightWarrantsIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNTUxOA_14449526-8671-460a-8342-85de02dc0983">688,360</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i80309835f493449a847d541559d6ff1d_I20200131" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNTU2OA_5fea7f6a-4f2e-415b-a0a0-46a58c44b4bf">3.37</ix:nonFraction> per share in a concurrent private placement for a purchase price of $<ix:nonFraction unitRef="usdPerShare" contextRef="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131" decimals="INF" name="efoi:ClassOfWarrantOrRightWarrantsIssuedPricePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNTYzOQ_e3681874-defe-4788-88d7-f7cfbb8f46d7">0.625</ix:nonFraction> per warrant. We paid the placement agent commissions of $<ix:nonFraction unitRef="usd" contextRef="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131" decimals="-3" format="ixt:numdotdecimal" name="efoi:PaymentsForPlacementAgentCommissions" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNTY5OA_6b6dc465-57a8-4072-b6fa-232e0553f340">193</ix:nonFraction>&#160;thousand plus $<ix:nonFraction unitRef="usd" contextRef="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131" decimals="-3" format="ixt:numdotdecimal" name="efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNTcwNg_289e5823-dd3f-4790-adca-06e263362ff5">50</ix:nonFraction>&#160;thousand in expenses in connection with the registered direct offering and the concurrent private placement and we also paid legal, accounting and other fees of $<ix:nonFraction unitRef="usd" contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131" decimals="-3" format="ixt:numdotdecimal" name="efoi:PaymentsForClearingFees" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNTg2MQ_7ca76c60-ab13-4792-831a-97b9c1f91164">231</ix:nonFraction>&#160;thousand related to the offering. Total offering costs of $<ix:nonFraction unitRef="usd" contextRef="i00eb0670d1e149a2a10c5ce329bb1fa2_D20200101-20201231" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:PaymentsOfStockIssuanceCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDUwNA_6219d965-8ef4-40ac-9f58-f0ce8512cda9">510</ix:nonFraction>&#160;thousand have been presented as a reduction of additional paid-in capital and have been netted within equity in the Condensed Consolidated Balance Sheet as of December&#160;31, 2020. In addition, we issued warrants to the placement agent to purchase up to <ix:nonFraction unitRef="shares" contextRef="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131" decimals="INF" format="ixt:numdotdecimal" name="efoi:ClassOfWarrantOrRightWarrantsIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjE0Mw_60fa2ab7-e9a1-44e8-b6f9-f3b2eaf3090d">48,185</ix:nonFraction> shares of common stock at an exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="i3474f10caa984249abced513511bd9c0_I20200131" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjE5Mw_d70c0c0d-7bd1-4c56-bfdb-6767aabc32e4">4.99</ix:nonFraction> per share. Net proceeds to us from the sale of common stock and warrants were approximately $<ix:nonFraction unitRef="usd" contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131" decimals="-5" format="ixt:numdotdecimal" name="efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjI4OA_b1c8ee82-1725-4f4b-80b7-6b520d53ed99">2.3</ix:nonFraction> million. In accordance with the terms of the Iliad Note (as defined above in Note 7, &#8220;Debt&#8221;), <ix:nonFraction unitRef="number" contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131" decimals="INF" name="efoi:DebtInstrumentProceedsToBePaidToLenderPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjM0MA_95316db5-aa73-47aa-b3b5-d92e384ec340"><ix:nonFraction unitRef="number" contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131" decimals="INF" name="efoi:DebtInstrumentProceedsToBePaidToLenderPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjM0MA_af756bb9-067e-44d0-aad9-5450870d78a7">10</ix:nonFraction></ix:nonFraction>% of the gross proceeds from the January 2020 Equity Offering ($<ix:nonFraction unitRef="usd" contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOrSaleOfEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjQwMw_e974408e-d05d-4340-8db9-368a4db9a8ab">275</ix:nonFraction>&#160;thousand) were used to make payments on the Iliad Note, of which $<ix:nonFraction unitRef="usd" contextRef="i5b14b389eebc47d5bcc51f2dd4812ce8_D20200101-20200131" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:RepaymentsOfNotesPayable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjQ2Mg_d09d255f-39e9-4325-8f36-15ea69271622">226</ix:nonFraction>&#160;thousand went towards the outstanding principal amount and the balance to interest.</span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">25</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="i15f864a711874584a1a10f202785dc8b" continuedAt="i916100cd092e4ceda8d6f16e18bed53a"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Warrants to purchase an aggregate of <ix:nonFraction unitRef="shares" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="INF" format="ixt:numdotdecimal" name="efoi:ClassOfWarrantOrRightWarrantsIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjU3OA_a1b99d71-1a69-4166-a787-a72c2f31c7d3">310,860</ix:nonFraction> shares remain outstanding at March&#160;31, 2021 with a weighted average exercise price of $<ix:nonFraction unitRef="usdPerShare" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="2" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjY1NQ_8230afa9-708c-4081-ab29-eb32e812672c">3.59</ix:nonFraction> per share. The exercise of warrants could provide us with cash proceeds of up to $<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfWarrants" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjczOQ_8ecb14c5-7456-4175-94bb-faf759d28b15">1.1</ix:nonFraction> million in the aggregate if all warrants are exercised. During the three months ended March 31, 2021, <ix:nonFraction unitRef="shares" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjgwNQ_5d8f0438-74f8-408b-af09-3fa1e6c31fe2">156,446</ix:nonFraction> warrants were exercised resulting in total proceeds of $<ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromWarrantExercises" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjg2Mw_c5217cd1-c5bf-462f-860c-b01fd7eb2850">527</ix:nonFraction> thousand. </span></div><div><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTYxNg_3c20763e-aa43-4439-b44c-53c73abfef11" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As of March&#160;31, 2021, we had the following outstanding warrants to purchase shares of common stock:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:47.398%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.570%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Number of Underlying Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Exercise Price</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expiration</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Investor Warrants</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i688eff7e70ff4f109664ebab2f07dd0f_D20210101-20210331" decimals="INF" format="ixt:numdotdecimal" name="efoi:ClassOfWarrantOrRightWarrantsIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjEzMTQ3MmM2YmE3NTQ2ZDI5ODhmYWQzMzcyMjdjNTE5L3RhYmxlcmFuZ2U6MTMxNDcyYzZiYTc1NDZkMjk4OGZhZDMzNzIyN2M1MTlfMS0xLTEtMS0w_efbe5927-d570-4586-91ed-f4806dc0e337">269,180</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$<ix:nonFraction unitRef="usdPerShare" contextRef="ie0fd88a0abe14e9e86e69687ad7c12e6_I20210331" decimals="4" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjEzMTQ3MmM2YmE3NTQ2ZDI5ODhmYWQzMzcyMjdjNTE5L3RhYmxlcmFuZ2U6MTMxNDcyYzZiYTc1NDZkMjk4OGZhZDMzNzIyN2M1MTlfMS0zLTEtMS0w_fcfb99c2-c375-4b15-8c69-4fba32824e4f">3.3700</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 13, 2025</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Placement Agent Warrants</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ic8a5b48784f3454d8b3798eb20083704_D20210101-20210331" decimals="INF" format="ixt:numdotdecimal" name="efoi:ClassOfWarrantOrRightWarrantsIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjEzMTQ3MmM2YmE3NTQ2ZDI5ODhmYWQzMzcyMjdjNTE5L3RhYmxlcmFuZ2U6MTMxNDcyYzZiYTc1NDZkMjk4OGZhZDMzNzIyN2M1MTlfMi0xLTEtMS0w_ec1f8ddd-8cf7-4ff1-901e-4853ea36f11c">41,680</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$<ix:nonFraction unitRef="usdPerShare" contextRef="i7b7525b9862f4b568f1afcd51170c828_I20210331" decimals="4" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjEzMTQ3MmM2YmE3NTQ2ZDI5ODhmYWQzMzcyMjdjNTE5L3RhYmxlcmFuZ2U6MTMxNDcyYzZiYTc1NDZkMjk4OGZhZDMzNzIyN2M1MTlfMi0zLTEtMS0wL3RleHRyZWdpb246NTRiZWQ5ZDBkMDdiNGEyMmExZDRiY2Y2Yzc0YWI5Y2FfNA_2f72caa5-fa36-4165-a114-1b751270c3cc">4.9940</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 13, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="INF" format="ixt:numdotdecimal" name="efoi:ClassOfWarrantOrRightWarrantsIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjEzMTQ3MmM2YmE3NTQ2ZDI5ODhmYWQzMzcyMjdjNTE5L3RhYmxlcmFuZ2U6MTMxNDcyYzZiYTc1NDZkMjk4OGZhZDMzNzIyN2M1MTlfMy0xLTEtMS0w_a1b99d71-1a69-4166-a787-a72c2f31c7d3">310,860</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As of March 31, 2020, we had the following outstanding warrants to purchase shares of common stock:</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:47.398%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.570%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Number of Underlying Shares*</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Exercise Price</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expiration</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Investor Warrants</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ibc574a748cfb4936926327dcb115d007_D20200101-20200331" decimals="INF" format="ixt:numdotdecimal" name="efoi:ClassOfWarrantOrRightWarrantsIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmNiYWIxM2ZhYzEzMTRkOTM4YjRiNzlhZTI0NjA2ZDhlL3RhYmxlcmFuZ2U6Y2JhYjEzZmFjMTMxNGQ5MzhiNGI3OWFlMjQ2MDZkOGVfMS0xLTEtMS0zMjQ5_5d47d81d-434b-47d6-801e-e156e3ea88fe">688,360</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$<ix:nonFraction unitRef="usdPerShare" contextRef="i102df05d8b4d484d854f73dd0afb12a3_I20200331" decimals="4" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmNiYWIxM2ZhYzEzMTRkOTM4YjRiNzlhZTI0NjA2ZDhlL3RhYmxlcmFuZ2U6Y2JhYjEzZmFjMTMxNGQ5MzhiNGI3OWFlMjQ2MDZkOGVfMS0zLTEtMS0zMjUx_543fe1ef-d2ff-44d6-bb44-f96e008d576e">3.3700</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 13, 2025</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Placement Agent Warrants</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="id5e82a695c8944f290e51261e35ca1b3_D20200101-20200331" decimals="INF" format="ixt:numdotdecimal" name="efoi:ClassOfWarrantOrRightWarrantsIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmNiYWIxM2ZhYzEzMTRkOTM4YjRiNzlhZTI0NjA2ZDhlL3RhYmxlcmFuZ2U6Y2JhYjEzZmFjMTMxNGQ5MzhiNGI3OWFlMjQ2MDZkOGVfMi0xLTEtMS0zMjQ5_4c81e2ac-c288-40b0-bac0-5e03e9b49862">48,185</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$<ix:nonFraction unitRef="usdPerShare" contextRef="i7b7525b9862f4b568f1afcd51170c828_I20210331" decimals="4" name="us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmNiYWIxM2ZhYzEzMTRkOTM4YjRiNzlhZTI0NjA2ZDhlL3RhYmxlcmFuZ2U6Y2JhYjEzZmFjMTMxNGQ5MzhiNGI3OWFlMjQ2MDZkOGVfMi0zLTEtMS0yMzA2_9d0bf74a-9a6a-4690-ad99-a20c31c0f4f1">4.9940</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 13, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="INF" format="ixt:numdotdecimal" name="efoi:ClassOfWarrantOrRightWarrantsIssued" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmNiYWIxM2ZhYzEzMTRkOTM4YjRiNzlhZTI0NjA2ZDhlL3RhYmxlcmFuZ2U6Y2JhYjEzZmFjMTMxNGQ5MzhiNGI3OWFlMjQ2MDZkOGVfMy0xLTEtMS0zMjQ5_9126e3e2-1e20-40c8-a962-c40a4841074b">736,545</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Warrant Classification</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We account for common stock warrants as either liabilities or equity instruments depending on the specific terms of the warrant agreement. Common stock warrants that could require cash settlement are accounted for as liabilities and are revalued at fair value at each balance sheet date subsequent to the initial issuance. Changes in the fair market value of the warrant are reflected in the consolidated statement of operations as income (expense) based upon the change in fair value of warrants. Common stock warrants without cash settlement provisions are accounted for as equity and re-measurement at each balance sheet date is not required.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The warrants we issued in the January 2020 Equity Offering contained a provision for net cash settlement in the event that there is a fundamental transaction involving the Company (e.g., merger, sale of substantially all assets, tender offer, or share exchange). Due to this provision, the warrants were initially classified as liabilities, as opposed to equity, and were recorded at their fair values at each balance sheet date with fair value adjustments recognized as a component of earnings. During December 2020, the warrant holders agreed to a modification of the terms of their warrants which removed the potential cash settlement option upon the occurrence of a fundamental transaction. As such, during the fourth quarter of 2020, the warrant liability was reclassified into equity and the warrants are no longer subject to re-measurement at each balance sheet date. </span></div></ix:continuation><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">26</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="i916100cd092e4ceda8d6f16e18bed53a" continuedAt="icb6b699798a0431a9c493329da43196a"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Stock-based compensation</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation expense is attributable to stock options and restricted stock unit awards. For all stock-based awards, we recognize expense using a straight-line amortization method.</span></div><div><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTYzNA_4c24fcef-3295-418a-9d1a-0c82f92ba895" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes stock-based compensation expense and the impact it had on operations for the periods presented (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:64.815%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.569%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i52ef57e0d6f649c294e6b21e7d493741_D20210101-20210331" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfMi0xLTEtMS0w_c21432da-e1e1-4d0f-8d21-c380753d3808">2</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i1274ca278bbb445b90395605a8206ee5_D20200101-20200331" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfMi0zLTEtMS0w_034d825e-6f80-4069-ae12-30ae5ee882e1">1</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Product development</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i02d886360698450a823175c9c4a4352e_D20210101-20210331" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfMy0xLTEtMS0w_5e273457-eaec-4df0-af93-c33f46aff56f">6</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i185da9ffb81e4ff4b93e3ad77b4c1018_D20200101-20200331" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfMy0zLTEtMS0w_081a1613-1587-47e8-8871-f6980c366300">1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general, and administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i0d1cfbd6b81949b6b7b0d2dfe9c96663_D20210101-20210331" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfNC0xLTEtMS0w_89a567b0-0a07-426c-bcc3-57a8b3b030a2">132</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i4f887d6f2b3e447a9e37eacf99f2e6ac_D20200101-20200331" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfNC0zLTEtMS0w_6c417526-a5d4-45f9-8bf8-bc618d6d21db">18</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total stock-based compensation</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfNS0xLTEtMS0w_f218637e-8fef-47b2-b212-db9dbbf58d6f">140</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfNS0zLTEtMS0w_fa8853ab-1f16-471b-a781-352abe508029">20</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total unearned stock-based compensation was $<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MzE2OQ_5cc96d82-0143-4010-b202-6be0459dc43d">0.6</ix:nonFraction> million at March&#160;31, 2021, compared to $<ix:nonFraction unitRef="usd" contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MzE3Ng_98213e76-f3f6-4e75-a9fd-b45c7683673b">0.2</ix:nonFraction> million at March&#160;31, 2020. These costs will be charged to expense and amortized on a straight-line basis in future periods. The weighted average period over which the unearned compensation at March&#160;31, 2021 is expected to be recognized is approximately <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTAzMA_dd95637b-242d-4ae6-b31c-6c724dffd1a3">2.5</ix:nonNumeric> years.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Stock options</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of each stock option is estimated on the date of grant using the Black-Scholes option pricing model. <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTYyNA_0a9141c9-66dc-4c00-827e-2df532514ee5" continuedAt="ie87aaa906adb41c3b58407c7fee06aa3" escape="true">Estimates utilized in the calculation include the expected life of the option, risk-free interest rate, and expected volatility, and are further detailed below. </ix:nonNumeric></span></div><div style="margin-bottom:6pt;text-align:center"><ix:continuation id="ie87aaa906adb41c3b58407c7fee06aa3"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:64.966%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.400%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.568%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of options issued*</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" name="us-gaap:SharePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfMi0xLTEtMS0w_bcce00ec-c658-4ef9-9e92-5d1a3ee43699">4.26</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331" decimals="INF" name="us-gaap:SharePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfMi0zLTEtMS0w_3404db02-0c41-441f-9e96-6829a3b4483e">1.12</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exercise price*</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfMy0xLTEtMS0w_c94af4ff-95b6-4c21-9bd1-4fe5e402c7cd">5.51</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfMy0zLTEtMS0w_0e1dde0f-9f49-4eb9-a587-ca37d48d3237">1.48</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected life of options (in years)</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNC0xLTEtMS0w_f9e17444-0b65-48ef-b55f-e7a6aa505412">6.2</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNC0zLTEtMS0w_9ed26b2f-9fa9-4ea0-a101-3d0e379a0d2f">6.1</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Risk-free interest rate</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNS0xLTEtMS0w_903cf4d3-14c9-44ec-b937-2161be7b176a">0.8</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNS0zLTEtMS0w_a4636e2b-3749-4fae-b7b6-57bbded49483">0.7</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected volatility</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNi0xLTEtMS0w_7f9a8942-da7a-47dc-a4db-df34aeef93f0">96.3</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNi0zLTEtMS0w_efe4582c-9172-4be9-abf4-1f95edbdfd53">92.8</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dividend yield</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNy0xLTEtMS0w_806584bc-b123-426b-8711-63a27e5092c5">0.0</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNy0zLTEtMS0w_3c6bcd0c-e8ea-407f-9e7f-f838135fdbf4">0.0</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="12" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*Prior year options have been restated for the 1-for-5 reverse stock split effective June 11, 2020.</span></td></tr></table></ix:continuation></div></ix:continuation><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">27</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="icb6b699798a0431a9c493329da43196a"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTYzNQ_26d09c53-ec6b-4220-8d29-85bb88f2272e" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of option activity under all outstanding stock incentive plans for the three months ended March 31, 2021 is presented as follows:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:47.398%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.570%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Number of<br/>Options</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted<br/>Average<br/>Exercise<br/>Price Per<br/>Share</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted<br/>Average<br/>Remaining<br/>Contractual<br/>Life (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMS0xLTEtMS0w_b30912a7-8960-4868-bda6-e027b5f7ecd4">221,450</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMS0zLTEtMS0w_529d58dc-bb7a-46c3-ad75-3b69b9508cec">3.45</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMi0xLTEtMS0w_1b494bf4-21c8-46e2-b9be-4eb3e6aaab10">72,120</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMi0zLTEtMS0w_75ac31e8-68b4-4e88-8de4-0d9dfd853211">5.51</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canceled/forfeited</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNC0xLTEtMS0w_3d8a8bc3-4362-4a97-b756-e2cee9e2f7fd">4,459</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNC0zLTEtMS0w_263bbe6d-0bbb-4b5d-ae36-dca6fa8b1795">2.77</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expired</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNS0xLTEtMS0w_f69aa448-5c5c-4ffc-9aa4-e924c4e0bbe0">1,500</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNS0zLTEtMS0w_3cbfa716-231c-4f93-8231-1a797eca608b">53.50</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at March 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNi0xLTEtMS0w_5fa30ec4-eb9a-48cb-ab0d-a4d4e44d02e5">287,611</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNi0zLTEtMS0w_ed3e2370-eb9e-4805-8a9a-45c57fef87e8">3.71</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNi01LTEtMS0w_670d1629-be0d-4499-b907-56463be05f0b">8.9</ix:nonNumeric></span></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Vested and expected to vest at March 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfOC0xLTEtMS0w_42c2b260-a1be-4742-ae0a-79def15d3819">228,312</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfOC0zLTEtMS0w_9e213cda-6f96-4dac-8d02-087a49264bb8">3.68</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfOC01LTEtMS0w_efa46c08-129b-4324-ab5d-d1d19a755214">8.8</ix:nonNumeric></span></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Exercisable at March 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMTAtMS0xLTEtMA_3fb6a889-6357-464b-a3ac-b62215458090">62,154</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMTAtMy0xLTEtMA_fe60f532-9c70-42cb-8f54-8fe95f5ca22d">4.25</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMTAtNS0xLTEtMA_81a239ab-4736-49e4-9441-a6a0353e717d">8.1</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Restricted stock units</span></div><div><span><br/></span></div><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTYyMQ_80ace798-ef57-4f89-9d71-b0f273bceda9" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of restricted stock unit activity under all outstanding stock incentive plans for the three months ended March 31, 2021 is presented as follows:</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:47.398%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.570%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restricted<br/>Stock Units</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted<br/>Average<br/>Grant<br/>Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted<br/>Average<br/>Remaining<br/>Contractual<br/>Life (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i7ce97b0111a9407fb3e025133e40dd13_I20201231" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfMS0xLTEtMS0w_8dccfec7-1fe8-4260-b98c-edcb56e16e27">4,480</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfMS0zLTEtMS0w_2281482f-fd9d-4cee-8fed-806794515ea7">8.64</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfMi0xLTEtMS0w_2f8b3355-265f-42fe-9cb2-9906dd252567">50,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfMi0zLTEtMS0w_871a7a2f-aab0-4643-8a36-761c3b60df2b">5.26</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfMy0xLTEtMS0w_d0c4b19f-db7e-4cc8-bd1a-c618d2100ad7">1,280</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfMy0zLTEtMS0w_67492103-5659-4001-b4c8-a4f4deb26192">12.40</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at March 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ifc53b698d0bb42419b6699f219dbaa83_I20210331" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfNS0xLTEtMS0w_f2d166d7-5113-4802-90eb-e9ee0ff3bd9c">53,200</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="ifc53b698d0bb42419b6699f219dbaa83_I20210331" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfNS0zLTEtMS0w_31469538-0a9f-4d4e-aeed-015ddcec4b92">5.37</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331" format="ixt-sec:duryear" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfNS01LTEtMS0w_52e1c752-97c9-4375-a033-9f2085e9c97e">1.4</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_76"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 10.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83Ni9mcmFnOmRkM2Y2ZGM3ZjE2MTQwYzNiZmI3NWY2ZmU0MjAwMDVkL3RleHRyZWdpb246ZGQzZjZkYzdmMTYxNDBjM2JmYjc1ZjZmZTQyMDAwNWRfMzI5ODUzNDg4Mzc3MQ_5cf21638-ce7f-46db-a817-1ba8b11e1ee0" continuedAt="i5aecb1c8377d4285a459c75406d67011" escape="true">COMMITMENTS AND CONTINGENCIES</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i5aecb1c8377d4285a459c75406d67011"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Purchase Commitments</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March&#160;31, 2021, we had approximately $<ix:nonFraction unitRef="usd" contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:PurchaseObligation" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83Ni9mcmFnOmRkM2Y2ZGM3ZjE2MTQwYzNiZmI3NWY2ZmU0MjAwMDVkL3RleHRyZWdpb246ZGQzZjZkYzdmMTYxNDBjM2JmYjc1ZjZmZTQyMDAwNWRfMTA5OTUxMTYyODIwNg_9ed1eb4f-2e66-4b4e-959a-490677f8fbd1">4.2</ix:nonFraction>&#160;million in outstanding purchase commitments for inventory. Of this amount, approximately $<ix:nonFraction unitRef="usd" contextRef="i35678c0361cb4b5c9871138c4ded16f7_D20210401-20210630" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:LongTermPurchaseCommitmentAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83Ni9mcmFnOmRkM2Y2ZGM3ZjE2MTQwYzNiZmI3NWY2ZmU0MjAwMDVkL3RleHRyZWdpb246ZGQzZjZkYzdmMTYxNDBjM2JmYjc1ZjZmZTQyMDAwNWRfMzI5ODUzNDg4Mzc3NA_1891c76f-7eb1-40e8-ac2a-d0cd7ffe6fbb">1.4</ix:nonFraction>&#160;million is expected to ship in the second quarter of 2021, with the balance expected to ship in the third quarter of 2021 and thereafter.</span></div></ix:continuation><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_79"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 11. <ix:nonNumeric contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331" name="us-gaap:SubsequentEventsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMTYyMA_bac66562-5b09-49cd-84e7-592d2149507d" continuedAt="i98d8da2d1bca4d4ba6bf7998af5d5b08" escape="true">SUBSEQUENT EVENTS</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i98d8da2d1bca4d4ba6bf7998af5d5b08" continuedAt="i98be4ba41cc34ae6ab9805ef48438541"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Streeterville Note</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As disclosed in Note 7, &#8220;Debt&#8221;, on April 27, 2021, we entered into the Streeterville Note Purchase Agreement with Streeterville pursuant to which the Company sold and issued to Streeterville Note in the principal amount of approximately $<ix:nonFraction unitRef="usd" contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentFaceAmount" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTYwNw_42631a16-17a4-4c62-9579-061e864ca073">1.7</ix:nonFraction>&#160;million. The Streeterville Note was issued with an original issue discount of $<ix:nonFraction unitRef="usd" contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DebtInstrumentUnamortizedDiscount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTYzNQ_986625fd-9084-4437-9f87-e4f470f6a59b">194</ix:nonFraction>&#160;thousand and Streeterville paid a purchase price of $<ix:nonFraction unitRef="usd" contextRef="i50ba0c2a78a741cbbd1175c3c8e51ca4_D20210427-20210427" decimals="-5" format="ixt:numdotdecimal" name="us-gaap:ProceedsFromIssuanceOfDebt" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTYyMQ_1e422f31-279d-4d96-8264-3c0569d667c6">1.5</ix:nonFraction>&#160;million for the Streeterville Note, after deduction of $<ix:nonFraction unitRef="usd" contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427" decimals="-3" format="ixt:numdotdecimal" name="us-gaap:DeferredFinanceCostsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY1MA_f74604cc-5c25-482c-8d66-5791cec3d3e0">15</ix:nonFraction>&#160;thousand of Streeterville transaction expenses.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Streeterville Note has a maturity date of April 27, 2023, and accrues interest at <ix:nonFraction unitRef="number" contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY2NA_3cf576e9-c26b-4a43-9d95-5f8a4d04e0b9">8</ix:nonFraction>% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding under the Note at a premium, which is <ix:nonFraction unitRef="number" contextRef="i17a762aaa3344791adeeb85e487fb039_D20210427-20210427" decimals="INF" name="efoi:DebtInstrumentPrepaymentPremiumPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY2OA_121d7566-0129-4d99-b388-224dc87856d4">5</ix:nonFraction>% during the first three months and <ix:nonFraction unitRef="number" contextRef="i2f7c05c5c42d4a7a95b92e6d57c7db6f_D20210427-20210427" decimals="INF" name="efoi:DebtInstrumentPrepaymentPremiumPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY3Mg_78ad7b8d-588b-4121-ad41-b1cde4945e7f">10</ix:nonFraction>% percent thereafter. Prepayments at the reduced rate in the first three months are limited to <ix:nonFraction unitRef="number" contextRef="i17a762aaa3344791adeeb85e487fb039_D20210427-20210427" decimals="2" name="efoi:DebtPrepaymentMaximumPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY3Nw_71d5c253-b4f1-4541-a7f4-f4210cf47830">50</ix:nonFraction>% of the outstanding balance. Beginning on the first day of the calendar month following the date that is <ix:nonNumeric contextRef="i50ba0c2a78a741cbbd1175c3c8e51ca4_D20210427-20210427" format="ixt-sec:durwordsen" name="efoi:DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzg0ODI5MDcwNTU5Nw_b4453818-af65-470d-896d-f4e56002f762" continuedAt="id7f421bf4ba640afbfdd48b7c4fed3e9">six </ix:nonNumeric></span></div></ix:continuation><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">28</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:72pt;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ENERGY FOCUS, INC.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO THE CONDENSED CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">March&#160;31, 2021</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div></div><ix:continuation id="i98be4ba41cc34ae6ab9805ef48438541"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="id7f421bf4ba640afbfdd48b7c4fed3e9">months</ix:continuation> after the date of purchase, Streeterville may require the Company to redeem up to $<ix:nonFraction unitRef="usd" contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427" decimals="-3" format="ixt:numdotdecimal" name="efoi:DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY4Mg_744a620c-c3ff-4a2f-86a4-c457ee0b4542">205</ix:nonFraction>&#160;thousand of the Streeterville Note in any calendar month. The Company has the right on <ix:nonFraction unitRef="deferral" contextRef="i50ba0c2a78a741cbbd1175c3c8e51ca4_D20210427-20210427" decimals="INF" format="ixt-sec:numwordsen" name="efoi:DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzg0ODI5MDcwNTYxNg_19ee0bd2-84eb-47f3-b3bb-f87844bd2056">three</ix:nonFraction> occasions to defer all redemptions that Streeterville could otherwise require the Company to make during any calendar month. Each exercise of this deferral right by the Company will increase the amount outstanding under the Streeterville Note by <ix:nonFraction unitRef="number" contextRef="i17a762aaa3344791adeeb85e487fb039_D20210427-20210427" decimals="INF" name="efoi:NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY5Nw_6d13d350-fd55-4499-922e-58a9028acbdf">1.5</ix:nonFraction>%.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Inventory Facility Increase</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As disclosed in Note 7, &#8220;Debt&#8221;, the Company entered into the Inventory Facility with the IF lender on August 11, 2020. Borrowings under the original Inventory Facility were permitted up to the lower of (i) $<ix:nonFraction unitRef="usd" contextRef="i2e571f4b493a41619ace396495da7565_I20200811" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMTA5OTUxMTYzMzI4NQ_05f75e64-ae0c-4787-b911-92a3a32e174a">3.0</ix:nonFraction> million and (ii) a borrowing base determined from time to time based on the value of the Company&#8217;s eligible inventory, valued at <ix:nonFraction unitRef="number" contextRef="i2e571f4b493a41619ace396495da7565_I20200811" decimals="INF" name="efoi:LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMTA5OTUxMTYzMzQxMA_888497bb-af7c-49f1-b32b-0dbf593920ae">75</ix:nonFraction>% of inventory costs or <ix:nonFraction unitRef="number" contextRef="i2e571f4b493a41619ace396495da7565_I20200811" decimals="INF" name="efoi:LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMTA5OTUxMTYzMzQzNg_de28b478-c0f9-498e-b9b0-1bcea22d312f">85</ix:nonFraction>% of the inventory net orderly liquidation value, less the availability reserves. On April 20, 2021, the Company and the IF lender entered into an amendment to the Inventory Loan Agreement to increase the maximum amount that may be available to the Company from $<ix:nonFraction unitRef="usd" contextRef="i2e571f4b493a41619ace396495da7565_I20200811" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg4OTM1NQ_7fb0d962-fd0e-417e-af63-cd563c8bd64d">3.0</ix:nonFraction> million previously to $<ix:nonFraction unitRef="usd" contextRef="i7b82fe3611ec4325a53fba6ad96f5792_I20210420" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg4OTM0Mw_392d449b-0b4b-4e76-b9e2-95ede691d36c">3.5</ix:nonFraction> million, subject to the borrowing base as set forth in the Inventory Loan Agreement.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Preferred Stock Conversion</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April 1, 2021, <ix:nonFraction unitRef="shares" contextRef="i00ea0eba4f7d4d4f97ed3eac19a2d4a6_D20210401-20210401" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ConversionOfStockSharesConverted1" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMTA5OTUxMTYzMDk5NQ_b3f1c1de-2ed1-41a6-932b-7e83fd6165ab">1,721,023</ix:nonFraction> shares of Series A Preferred Stock were converted into <ix:nonFraction unitRef="shares" contextRef="i680c85489eaa462b88497e2441ad4b39_I20210401" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMTA5OTUxMTYzMTQ1Ng_b39d8c2f-ffdb-40ac-af3a-2c7447217ca2">344,205</ix:nonFraction> common shares. The Series A Preferred Stock was held by a Schedule 13D ownership group (under Section 13(d)(3) of the Exchange Act and Rule 13d-5 promulgated thereunder) that includes Fusion Park LLC and 5 Elements Global Fund L.P. (controlled affiliates of James Tu, the Company&#8217;s Executive Chairman and Chief Executive Officer), as well as Brilliant Start Enterprise Inc. and Jag International Ltd. (controlled affiliates of Gina Huang, a member of the Company&#8217;s Board of Directors). Upon the conversion of their respective shares of Series A Preferred Stock, Fusion Park and Brilliant Start received <ix:nonFraction unitRef="shares" contextRef="iff32125b13c7454683df0d63faf61ae3_D20210401-20210401" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg4OTMyNQ_a2a0afad-9672-4a71-9a6a-76e944244822">184,851</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="i582bd18c1c3c482099ca1731004fb30f_D20210401-20210401" decimals="INF" format="ixt:numdotdecimal" name="us-gaap:StockIssuedDuringPeriodSharesNewIssues" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg4OTMzNA_05bf059d-6693-4304-a4a9-c1e5909ae330">159,354</ix:nonFraction> shares, respectively, of the Company&#8217;s common stock.</span></div></ix:continuation><div><span><br/></span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">29</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_82"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM 2.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following discussion and analysis of our financial condition and results of operations should be read in conjunction with the financial statements and related notes thereto included in Part I, Item 1, &#8220;Financial Statements&#8221; of this Quarterly Report, as well as Item 7, &#8220;Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations,&#8221; of our Annual Report on Form 10-K for the year ended December&#160;31, 2020 (&#8220;2020 Annual Report&#8221;).</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_85"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Overview</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Energy Focus, Inc. engages primarily in the design, development, manufacturing, marketing and sale of energy-efficient light-emitting diode (&#8220;LED&#8221;) lighting systems and controls and recently announced development of ultraviolet-C light disinfection (&#8220;UVCD&#8221;) products. We develop, market and sell high quality LED lighting products and UVCD products and controls in the commercial market and military maritime market (&#8220;MMM&#8221;). Our mission is to enable our customers to run their facilities and offices with greater energy efficiency, productivity, and human health through advanced LED retrofit and UVCD solutions. Our goal is to be the LED and human-centric lighting (&#8220;HCL&#8221;) technology and market leader for the most demanding applications where performance, quality, value (high quality at an affordable price), environmental impact and health are considered paramount. We specialize in LED lighting retrofit by replacing fluorescent, high-intensity discharge lighting and other types of lamps and fixtures in institutional buildings for primarily indoor lighting applications with our innovative, high-quality commercial and military tubular LED (&#8220;TLED&#8221;), as well as other LED and lighting control and UVCD products. In October 2020, we announced the launch of our UVCD product portfolio which is being brought to market in 2021.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales decreased 30% for the three months ended March 31, 2021 as compared to the three months ended March 31, 2020, primarily driven by a 16% decrease in military sales period-over-period, and a decrease in net sales of our commercial products of 47% for the three months ended March 31, 2021 as compared to the same prior year period. The sales cycles for the MMM is dependent on many factors, including the availability of government funding, the timing and fulfillment of U.S. Navy awards, new ship construction, diversion of funds to other government needs, and the timing of vessel maintenance schedules, and our financial results reflect volatility from fluctuations in the timing, pace and size of MMM projects. The sales cycles for our commercial target markets can range from several months to over one year and our financial results reflect volatility from the continued fluctuations in the timing, pace and size of commercial projects. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Despite continuing progress throughout 2020, operating losses increased by 82.0% in the first three months of 2021 over the first quarter of 2020. The Company&#8217;s results reflect the challenges due to long and unpredictable sales cycles, unexpected delays in customer retrofit budgets and project starts, and unexpected supply chain issues exacerbated by the COVID-19 pandemic. There has also been continuing aggressive price competition in the lighting industry. We continued to incur losses and we have a substantial accumulated deficit, which continues to raise substantial doubt about our ability to continue as a going concern at March&#160;31, 2021.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The novel coronavirus (&#8220;COVID-19&#8221;) pandemic in particular has, and may continue to have, a significant economic and business impact on our company. In the first quarter of 2021, following a slowdown throughout 2020, we have seen a continuing weakness in commercial sales as customers in the healthcare, education, and commercial and industrial sectors delayed order placements in reaction to the ongoing impacts of the COVID-19 pandemic that caused organizations to suspend or postpone lighting retrofit projects due to budget and occupancy uncertainties. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">We continue to monitor the impact of the COVID-19 pandemic on our customers, suppliers and logistics providers, and to evaluate governmental actions being taken to curtail and respond to the spread of the virus. The significance and duration of the ongoing impact on us is still uncertain. Material adverse effects of the COVID-19 pandemic on market drivers, our customers, suppliers or logistics providers could significantly impact our operating results. We also plan to continue to actively follow, assess and analyze the ongoing impact of the COVID-19 pandemic and continue to adjust our organizational structure, strategies, plans and processes to respond.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Because the situation continues to evolve, we cannot reasonably estimate the ultimate impact to our business, results of operations, cash flows and financial position that the COVID-19 pandemic may have. Continuation of the COVID-19 pandemic and government actions in response thereto could cause further disruptions to our operations and the operations of our customers, suppliers and logistics partners and could significantly adversely affect our near-term and long-term revenues, earnings, liquidity and cash flows. We aim to stay agile as an organization to respond to potential or continuing weakness in the macro environment and in the meantime expand sales channels and enter new markets, such as UVCD, that might be able to provide additional growth opportunities. </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">30</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">It is our belief that the momentum of the efforts undertaken in 2020, as described in our 2020 Annual Report, along with the development and launch of new and innovative products, will over time result in improved sales and bottom-line performance for the Company. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">We launched our EnFocus&#8482; platform during the second quarter of 2020 and continued to receive positive feedback from existing, new, and potential new customers. The EnFocus&#8482; platform offers two immediately available product lines: EnFocus&#8482; DM, which provides a dimmable lighting solution, and EnFocus&#8482; DCT, which provides both a dimmable and color tunable lighting solution. EnFocus&#8482; enables buildings to have dimmable, color tunable and circadian-ready lighting using existing wiring, without requiring laying additional data cables or any wireless communication systems, through a relatively simple upgrade with EnFocus&#8482; switches and tubular LEDs, a far more affordable and environmentally sustainable solution compared with replacing entire lighting fixtures and incorporating additional wired or wireless communication.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In addition, in response to the COVID-19 pandemic and an anticipated increase in sanitation and hygiene demand for buildings, facilities and homes, we are developing advanced UVCD products for both consumer as well as the commercial and industrial markets. We announced the following three UVCD products in the fourth quarter of 2020: abUV&#8482; circadian lighting and UVCD air disinfection integrated troffers controlled by the EnFocus&#8482; platform technology; nUVo&#8482; portable disinfection device for offices and homes; and mUVe&#8482; autonomous robot designed for surface disinfection. These UVCD products are expected to be available in the third quarter of 2021. In the first quarter of 2021, we further announced plans for the nUVo&#8482; Traveler personal air disinfection device and the mUVeCrew</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:115%;position:relative;top:-3.5pt;vertical-align:baseline">TM</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"> robotic surface disinfection service program, both expected also to be available in the second quarter of 2021.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In our MMM business, significant efforts undertaken to reduce costs in our product offerings have positioned us to be more competitive in this segment, along with improved production efficiencies. Such efforts allowed us to continue to win bids and proposals that helped grow our MMM sales throughout 2020, offsetting some of the weakness being experienced in our commercial business. In addition, during the fourth quarter of 2020, we became an approved supplier for the General Services Administration (&#8220;GSA&#8221;) and our products are now listed in the GSA website for all federal and military agencies to view and order our products. While we continue to aggressively seek to increase sales of our commercial products, the MMM business offers us continued sales, in addition to validating our product quality and strengthening our brand trust in the marketplace. However, due to product mix resulting from the continued impact of the COVID-19 pandemic on a commercial sales, our current financial results are primarily driven by, and reflect volatility in, our military sales. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Meanwhile, we continue to seek additional external funding alternatives and sources to support our growth strategies, plans and initiatives. We plan to achieve profitability through developing and launching new, innovative products, such as EnFocus</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">TM</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and our UVCD products, as well as executing on our multi-channel sales strategy that targets key verticals, such as government, healthcare, education and commercial and industrial, complemented by our marketing outreach campaigns and expanding channel partnerships. We also plan to continue to develop advanced lighting and lighting control applications built upon the EnFocus</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">TM</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> platform. In addition, we intend to continue to apply rigorous financial discipline in our organizational structure, business processes and policies, strategic sourcing activities and supply chain practices to help accelerate our path towards profitability.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">At March&#160;31, 2021, we had $0.5 million in cash, which excludes $0.3&#160;million of restricted cash held, and a total of $3.4 million of debt. On August 11, 2020, we entered into two debt financing arrangements (together, the &#8220;Credit Facilities&#8221;). Total debt at March&#160;31, 2021 included $2.7 million outstanding under our inventory financing facility (the &#8220;Inventory Facility&#8221;) and $0.7 million outstanding under our receivables financing facility (the &#8220;Receivables Facility&#8221;). At March&#160;31, 2021, we had additional availability for us to borrow of $0.2 million under the Inventory Facility and $0.5 million under the Receivables Facility. On April 20, 2021, we entered into an amendment to the Loan and Security Agreement governing the Inventory Facility (the &#8220;Inventory Loan Agreement&#8221;) to increase the maximum amount that may be available to the Company from $3.0 million previously to $3.5 million, subject to the borrowing base as set forth in the Inventory Loan Agreement. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On April 27, 2021, we entered into a note purchase agreement (the &#8220;Streeterville Note Purchase Agreement&#8221;) with Streeterville Capital, LLC (&#8220;Streeterville&#8221;) pursuant to which the Company sold and issued to Streeterville a promissory note in the principal amount of approximately $1.7 million (the &#8220;Streeterville Note&#8221;). The Streeterville Note was issued with an original issue discount of $194 thousand and Streeterville paid a purchase price of $1.5 million for the Streeterville Note, after deduction of $15 thousand of Streeterville transaction expenses. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Streeterville Note has a maturity date of April 27, 2023, and accrues interest at 8% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding under the Note at a premium, which is five percent during the first three months and ten percent during the thereafter. Prepayments at the reduced rate in the first three </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">31</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">months are limited to 50% of the outstanding balance. Beginning on the first day of the calendar month following the date that is six months after the date of purchase, Streeterville may require the Company to redeem up to $205 thousand of the Streeterville Note in any calendar month. The Company has the right on three occasions to defer all redemptions that Streeterville could otherwise require the Company to make during any calendar month. Each exercise of this deferral right by the Company will increase the amount outstanding under the Streeterville Note by 1.5%.</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_88"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Results of operations</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth items in our Condensed Consolidated Statements of Operations as a percentage of net sales for the periods indicated:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:64.815%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.569%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net sales</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">72.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.0&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27.3&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating expenses:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Product development</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general, and administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">84.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructuring</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.4)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total operating expenses</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108.2&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60.7&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 30.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Loss from operations</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(87.2)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(33.4)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Other expenses (income):</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.5&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gain on forgiveness of PPP loan</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(30.4)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gain from change in fair value of warrants</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(23.1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net loss</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(62.2)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14.3)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_91"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Net sales</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A further breakdown of our net sales is presented in the following table (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:64.815%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.569%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">913&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,736&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MMM products</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,724&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,047&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total net sales</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,637&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,783&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Net sales of $2.6&#160;million for the first quarter of 2021 decreased compared to first quarter net sales of $3.8&#160;million for the three months ended March 31, 2020, driven by decreases in both commercial and MMM sales. Net sales of our commercial products decreased in the three months ended March&#160;31, 2021 compared to the same periods of 2020, mainly reflecting (i) a decrease in sales, caused by delayed orders that have occurred mainly in the healthcare, education, commercial and industrial sectors because of the continuing macroeconomic slowdown and purchasing decisions being put on hold due to the COVID-19 pandemic, (ii) lower sales from our agency network which was also impacted by the COVID-19 pandemic, and (iii) fluctuations in the timing, pace and size of commercial projects. Net sales of our MMM products decreased mainly due to availability of government funding and the timing of shipment for orders.</span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">32</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_94"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Gross profit</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Gross profit was $0.6 million, or 21% of net sales, for the first quarter of 2021, compared to $1.0&#160;million, or 27.3% of net sales, for the first quarter of 2020. Gross margin for the first quarter of 2021 included favorable price and usage variances for material and labor of $0.2&#160;million or 7% of net sales, and unfavorable inventory and warranty reserves of $0.1&#160;million or 5.0% of net sales. Gross margin for the first quarter of 2020 included unfavorable manufacturing variances and absorption of $0.3 million, or 7.2% of net sales.</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_97"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Operating expenses</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Product development</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Product development expenses include salaries and related expenses, contractor and consulting fees, legal fees, supplies and materials, as well as overhead, such as depreciation and facility costs. Product development costs are expensed as they are incurred. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Product development expenses were $0.7&#160;million for the first quarter of 2021, a $0.4 million increase compared to $0.3&#160;million for the first quarter of 2020. The increase is mainly related to payroll expense and product testing associated with the development and launch of our UVCD product portfolio.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Selling, general and</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">administrative</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Selling, general and administrative expenses were $2.2&#160;million for the first quarter of 2021, compared to $2.0&#160;million for the first quarter of 2020. The primary driver of the increase in selling, general and administrative expenses is an increase in payroll due to our growth initiatives that expanded our staff, primarily in sales and engineering.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Restructuring</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March&#160;31, 2021 and 2020, we recorded restructuring credits totaling approximately $19 thousand and $14 thousand, respectively, related to the cost and offsetting sub-lease income for the remaining lease obligations for the former New York, New York office.</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_100"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Interest expense</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest expense was $127 thousand for the first quarter of 2021, compared to interest expense of $133 thousand for the first quarter of 2020. The decrease in interest expense of $6 thousand is primarily due to more favorable terms of our current Credit Facilities compared to our prior revolving line of credit with Austin Financial Services, Inc. (the &#8220;Austin Credit Facility&#8221;). The actual cash interest paid in the first quarter of 2021 was $58 thousand compared to $67 thousand in the first quarter of 2020. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Gain on forgiveness of PPP loan</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Forgiveness income of $801 thousand related to the Paycheck Protection Program (&#8220;PPP&#8221;) loan taken out during 2020 was recognized during the three months ended March&#160;31, 2021. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Income from change in fair value of warrants</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A gain of $0.9 million was recognized during the three months ended March 31, 2020 for the market value change in our warrant liabilities. The income recognized in the first quarter of 2020 was a result of the revaluation of the warrant liability using the market price of the Company&#8217;s common stock at March&#160;31, 2020 versus the market price of the Company&#8217;s common stock at the time of initial issuance of the warrants (January 13, 2020). No warrant liability exists at March&#160;31, 2021, and, as such, there is no related gain or loss recorded.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Other expenses</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Other expenses were $17 thousand for the first quarter of 2021, compared to other expenses of $18 thousand for the first quarter of 2020. Other expenses are mainly comprised of bank and collateral management fees.</span></div><div id="ia1987147ec8946e7a79d46893e4b989b_103"></div><div><span><br/></span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">33</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Provision for income taxes</span></div><div style="padding-right:4.5pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Due to the operating losses incurred during the three months ended March&#160;31, 2021 and 2020, and after application of the annual limitation set forth under Section 382 of the Internal Revenue Code of 1986, as amended, it was not necessary to record a provision for U.S. federal income tax or various state income taxes as income tax benefits are fully offset by a valuation allowance recorded.</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_106"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Net loss</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March 31, 2021, our net loss was $1.6 million, compared to a net loss of $0.5 million for the three months ended March 31, 2020. The decrease is mainly due to a decrease in net sales of $1.1 million, and increases in (i) product development costs of $371 thousand; and (ii) selling, general and administrative costs of $191 thousand; all of which are offset by a decrease in cost of sales of $667 thousand. These factors are discussed in detail above.</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_109"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Financial condition</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">At March&#160;31, 2021, we had $0.5 million in cash, which excludes $0.3&#160;million of restricted cash held, and a total of $3.4 million of debt, including $2.7 million outstanding under our Inventory Facility and $0.7 million outstanding under our Receivables Facility. At March&#160;31, 2021, we had additional availability for us to borrow of $0.2 million under the Inventory Facility and $0.5 million under the Receivables Facility. We have historically incurred substantial losses, and as of March&#160;31, 2021, we had an accumulated deficit of $132.5 million. Additionally, our sales have been concentrated among a few major customers and for the three months ended March 31, 2021, two customers accounted for approximately 61% of net sales.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As a result of the restructuring actions and initiatives described above, we have reduced our operating expenses to be more commensurate with our expected sales volumes. However, we continue to incur losses and have a substantial accumulated deficit, and substantial doubt about our ability to continue as a going concern continues to exist at March&#160;31, 2021. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Throughout 2020, as well as the first quarter 2021, we have continued to evaluate and assess strategic options as we seek to achieve profitability. We plan to achieve profitability through growing our sales by continuing to execute on our multi-channel sales strategy that targets key verticals, such as government, healthcare, education, and commercial and industrial, complemented by our marketing outreach campaigns and expanding channel partnerships. We also plan to continue to develop and launch advanced lighting and lighting control technologies and introduce impactful new products such as EnFocus&#8482;, a breakthrough lighting control platform we officially launched during the second quarter of 2020. In addition, during the last quarter of 2020, we announced newly developed UVCD products for both consumer, as well as commercial and industrial markets, that are expected to be available in the third quarter of 2021.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As described in Note 9, &#8220;Stockholders&#8217; Equity,&#8221; in January 2020 we also raised approximately $2.3 million of net proceeds upon the issuance and sale of common stock and warrants (the &#8220;January 2020 Equity Offering&#8221;). Additionally, in August 2020, we entered into two revolving credit facilities, the capacity of one of which was recently increased in April 2021, and also in April 2021 we recently obtained bridge financing as described in Note 7, &#8220;Debt,&#8221; which allow for expanded borrowing capacity. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The restructuring and cost cutting initiatives implemented during 2020, as well as the January 2020 Equity Offering that significantly strengthened our balance sheet, the PPP loan we obtained in April 2020 and our enhanced debt capacity due to the debt refinancing in August 2020, and increased borrowing capacity and additional bridge financing achieved in April 2021, were designed to allow us to effectively execute these strategies. However, our efforts may not occur as quickly as we envision or be successful due to the long sales cycle in our industry, the corresponding time required to ramp up sales from new products and markets into this sales cycle, the timing of introductions of additional new products, significant competition, potential sales volatility given our customer concentration, and the recent and lingering economic impact from the COVID-19 pandemic that had significantly diminished the interest and activities for lighting retrofit projects until occupancy returns to more normal levels, among other factors. As a result, we will continue to review and pursue selected external funding sources to ensure adequate financial resources to execute across the timelines required to achieve these objectives including, but not limited to, the following:</span></div><div><span><br/></span></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">obtaining financing from traditional or non-traditional investment capital organizations or individuals; </span></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">obtaining funding from the sale of our common stock or other equity or debt instruments; and</span></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">obtaining debt financing with lending terms that more closely match our business model and capital needs.</span></div><div style="padding-left:36pt"><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">34</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There can be no assurance that we will obtain funding on acceptable terms, in a timely fashion, or at all. Obtaining additional funding contains risks, including:</span></div><div><span><br/></span></div><div style="padding-left:72pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">additional equity financing may not be available to us on satisfactory terms, and any equity we are able to issue could lead to dilution for current stockholders and have rights, preferences and privileges senior to our common stock;</span></div><div style="padding-left:72pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">loans or other debt instruments may have terms and/or conditions, such as interest rate, restrictive covenants, conversion features, refinancing demands, and control or revocation provisions, which are not acceptable to management or our board of directors; and</span></div><div style="padding-left:72pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">the current environment in the capital markets combined with our capital constraints may prevent us from being able to obtain adequate debt financing.</span></div><div style="padding-left:36pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">If we fail to obtain the required additional financing to sustain our business before we are able to produce levels of revenue to meet our financial needs, we will need to delay, scale back or eliminate our growth plans and further reduce our operating costs and headcount, each of which would have a material adverse effect on our business, future prospects, and financial condition. A lack of additional funding could also result in our inability to continue as a going concern and force us to sell certain assets or discontinue or curtail our operations and, as a result, investors in the Company could lose their entire investment.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Considering both quantitative and qualitative information, we continue to believe that the combination of our plans to obtain additional external funding, timely re-organizational actions, current financial position, liquid resources, obligations due or anticipated within the next year, development and implementation of an excess inventory reduction plan, plans and initiatives in our research and development, product development and sales and marketing, and development of potential channel partnerships, if adequately executed, will provide us with an ability to finance our operations through the next twelve months and will mitigate the substantial doubt about our ability to continue as a going concern. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On August 17, 2020, we received a letter from the Listing Qualifications staff (the &#8220;Staff&#8221;) of The Nasdaq Stock Market (&#8220;Nasdaq&#8221;) notifying us that we are no longer in compliance with Nasdaq Listing Rule 5550(b)(1), which requires listed companies to maintain stockholders&#8217; equity of at least $2,500,000 if they do not meet the alternative compliance standards relating to the market value of listed securities or net income from continuing operations (the &#8220;Minimum Stockholders&#8217; Equity Rule&#8221;). Our Quarterly Report on Form 10-Q for the quarterly period ended June 30, 2020, filed on August 13, 2020, reflected that our stockholders&#8217; equity as of June 30, 2020 was $1,714,000. In addition, as of August 13, 2020, we did not meet the alternative compliance standards relating to the market value of listed securities or net income from continuing operations. On October 5, 2020, based on our timely submission of our plan to regain compliance, Nasdaq granted us an extension through February 15, 2021 to regain compliance with the Minimum Stockholders&#8217; Equity Rule, subject to our compliance with certain terms of the extension. In accordance with one part of the plan submitted to the Staff, we have successfully modified our outstanding warrants and are able to now classify the warrants within equity. At December 31, 2020, our stockholders&#8217; equity was $4,255,000. On January 20, 2021, we received a letter from the Staff notifying us that, on a conditional basis, Nasdaq has determined that we have regained compliance with the Minimum Stockholders&#8217; Equity Rule. At March&#160;31, 2021 our stockholders&#8217; equity was $3,278,000.</span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">35</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_112"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Liquidity and</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">capital</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">resources </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Cash</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At March&#160;31, 2021, our cash balance was approximately $0.5 million, compared to approximately $1.8 million at December&#160;31, 2020. The balance at each of March&#160;31, 2021 and December&#160;31, 2020 excluded restricted cash of $0.3 million for a letter of credit requirement under a lease obligation.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following summarizes cash flows from operating, investing, and financing activities, as reflected in the Condensed Consolidated Statements of Cash Flows included in Part I, Item 1, &#8220;Financial Statements,&#8221; of this Quarterly Report (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:64.815%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.569%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash (used in) provided by operating activities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,783)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">504&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash used in investing activities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(109)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(47)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net cash provided by financing activities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,604&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,104&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Net cash (used in) provided by operating activities </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash used in operating activities was $2.8 million for the three months ended March 31, 2021. The net loss was $1.6 million and was adjusted for non-cash items, including depreciation and amortization, stock-based compensation, provisions for inventory, warranty, gain on forgiveness of the PPP loan and accounts receivable reserves and working capital changes. During the three months ended March 31, 2021, we generated $1.0 million in cash from accounts payable due to the timing of inventory receipts and payments, and $0.5 million through the timing of collection of accounts receivable. We used $2.0 million for inventories primarily due to the timing of inventory receipts, and we used $0.2 million due to changes in accrued and other liabilities (primarily due to a reduction of $0.1 million in accrued accounting and legal fees and $0.2 million in accrued bonuses; offset by increases of $0.1 million in accrued payroll).</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash provided by operating activities was $0.5&#160;million for the three months ended March 31, 2020. The net loss incurred of $0.5&#160;million was adjusted for non-cash items, including depreciation, stock-based compensation, change in fair value of warrant liabilities, provisions for inventory and warranty reserves, and working capital changes. The primary driver for a positive operating cash flow was the generation of $1.5 million cash from the utilization of existing inventory stock as opposed to new purchases. During the three months ended March 31, 2020, we used $0.2&#160;million in cash for accounts payable, primarily due to the timing of inventory receipts and we used $0.2 million of prepaid and other assets due to prepaid deposits to our contract manufacturers for inventory for the new EnFocus</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">TM</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> platform. We generated cash of $0.4&#160;million through the collection of accounts receivable and $0.2 million through a decrease of other liabilities, primarily related to accrued payroll and benefits and commissions. Cash generated was partially offset by an adjustment of $0.9 million for change in fair value of warrants.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Net cash used in investing activities</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash used in investing activities was $109 thousand for the three months ended March 31, 2021 and resulted primarily from the purchase of software and a vehicle to support production operations, as well as development of the e-commerce platform.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March 31, 2020, net cash used in investing activities was $47&#160;thousand and resulted primarily from the purchase of tooling to support production operations.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Net cash provided by financing activities</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash provided by financing activities during the three months ended March 31, 2021 was $1.6 million, primarily related to net proceeds from the Credit Facilities of $1.1 million and proceeds from the exercise of 156,446 warrants of $0.5 million. Investors in the January 2020 Equity Offering received warrants to purchase shares of our common stock, of which </span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">36</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">warrants to purchase an aggregate of 310,860 shares remain outstanding at March&#160;31, 2021 with a weighted average exercise price of $3.59 per share. The exercise of warrants could provide us with cash proceeds of up to $1.1 million in the aggregate.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net cash provided by financing activities during the three months ended March 31, 2020 was $2.1 million, primarily resulting from the $2.8 million in proceeds received from the share issuance in January 2020, partially offset by $0.5 million in offering costs for the issuance and an issuance related mandatory repayment of the Iliad note of which $0.2 million was allocated against principal. At March 31, 2020, we had $1.1 million of additional availability for us to borrow under the Austin Credit Facility.</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_115"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Contractual obligations</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March&#160;31, 2021, we had approximately $4.2&#160;million in outstanding purchase commitments for inventory. Of this amount, approximately $1.4&#160;million is expected to ship in the second quarter of 2021, with the balance expected to ship in the third quarter of 2021 and thereafter.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been no other material changes to our contractual obligations as compared to those included in our 2020 Annual Report.</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_118"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Critical accounting policies</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fair value of warrant liabilities </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Due to a potential cash settlement upon occurrence of a fundamental transaction within the warrant agreement, the warrants were initially classified as liabilities, as opposed to equity, and were recorded at their fair values at each balance sheet date for the first three quarters of 2020. We used the Black-Scholes valuation model to value the warrant liabilities at fair value. The fair value is estimated using the expected volatility based on our historical volatility and is determined using probability weighted average assumptions, when appropriate. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">During December 2020, the warrant holders agreed to a modification of the terms of their warrants which removed the potential cash settlement option upon the occurrence of a fundamental transaction. As such, during the fourth quarter of 2020, the warrant liability was reclassified into equity and the warrants are no longer subject to re-measurement at each balance sheet date. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There have been no other material changes to our critical accounting policies as compared to those included in our 2020 Annual Report.</span></div><div id="ia1987147ec8946e7a79d46893e4b989b_121"></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Certain risks and concentrations</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have certain customers whose net sales individually represented 10% or more of our total net sales, or whose net trade accounts receivable balance individually represented 10% or more of our total net trade accounts receivable; we have certain suppliers, which individually represent 10% or more of our total purchases, or whose trade accounts payable balance individually represented 10% or more of our total trade accounts payable balance, as follows:</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March 31, 2021, sales to our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 50% and 11% of net sales, respectively. When sales to our primary distributor for the U.S. Navy are combined with sales to shipbuilders for the U.S. Navy, total net sales of products for the U.S. Navy comprised approximately 57% of net sales for the same period. For the three months ended March 31, 2020, sales to our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 38% and 15% of net sales, respectively. When sales to our primary distributor for the U.S. Navy are combined with sales to shipbuilders for the U.S. Navy, total net sales of products for the U.S. Navy comprised approximately 46% of net sales for the same period.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 45% and 16% of net trade accounts receivable, respectively, at March&#160;31, 2021. At December 31, 2020, our primary distributor to the U.S. Navy accounted for 28% of our net trade accounts receivable and a shipbuilder for the U.S. Navy accounted for 21% of our net trade accounts receivable. </span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">37</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">One offshore supplier accounted for approximately 26.1% and 21.6%, respectively, of our total expenditures for the three months ended March 31, 2021 and March&#160;31, 2020. At March&#160;31, 2021, this same offshore supplier and one domestic supplier accounted for approximately 39% and 10% of our trade accounts payable balance, respectively. At December 31, 2020 this same offshore supplier accounted for approximately 44% of our trade accounts payable balance.</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_124"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Recent accounting pronouncements</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For information on recent accounting pronouncements, please refer to Note 2, &#8220;Basis of Presentation and Summary of Significant Accounting Policies,&#8221; included under Part I, Item 1, &#8220;Financial Statements,&#8221; of this Quarterly Report.</span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">38</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_127"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM 3. QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a &#8220;smaller reporting company&#8221; as defined by Item 10 of Regulation S-K, the Company is not required to provide information required by this item.</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_130"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM 4. CONTROLS AND PROCEDURES</span></div><div><span><br/></span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Evaluation of disclosure controls and procedures</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We maintain disclosure controls and procedures, as defined in Rule 13a-15(e) and Rule 15d-15(e) under the Exchange Act that are designed to ensure that information required to be disclosed by us in the reports that we file or submit under the Exchange Act is recorded, processed, summarized and reported within the time periods specified in the rules and forms of the Securities and Exchange Commission, and that such information is accumulated and communicated to management, including our Chief Executive Officer and Chief Financial Officer, as appropriate, to allow for timely decisions regarding required disclosure. </span></div><div style="margin-top:5pt;text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Pursuant to Rule 13a-15(b) under the Exchange Act, our management must evaluate, with the participation of our Chief Executive Officer and Chief Financial Officer, the effectiveness of our disclosure controls and procedures, as of March&#160;31, 2021, the end of the period covered by this Quarterly Report. Management, with the participation of our Chief Executive Officer and Chief Financial Officer, did evaluate the effectiveness of our disclosure controls and procedures as of the end of period covered by this Quarterly Report. Based on this evaluation, our Chief Executive Officer and Chief Financial Officer concluded that our disclosure controls and procedures were effective as of March&#160;31, 2021.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Changes in internal control over financial reporting</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the quarterly period covered by this Quarterly Report, there have not been any changes in our internal control over financial reporting that materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.</span></div><div><span><br/></span></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">39</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_133"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART II &#8211; OTHER INFORMATION</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_136"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM 1. LEGAL PROCEEDINGS</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">From time to time, we may be involved in various claims and legal actions arising in the ordinary course of business. As of March&#160;31, 2021, we were not involved in any material legal proceedings.</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_139"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM 1A. RISK FACTORS</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a &#8220;smaller reporting company&#8221; as defined by Item 10 of Regulation S-K, the Company is not required to provide information required by this item.</span></div><div><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_142"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM 2. UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="text-align:justify"><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_145"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM 3. DEFAULTS UPON SENIOR SECURITIES</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="text-align:justify"><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_148"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM 4. MINE SAFETY DISCLOSURES</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Not Applicable.</span></div><div style="text-align:justify"><span><br/></span></div><div id="ia1987147ec8946e7a79d46893e4b989b_151"></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM 5. OTHER INFORMATION</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">40</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_154"></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><div style="-sec-extract:summary"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM 6. EXHIBITS</span></div><div style="text-align:center;text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">EXHIBIT INDEX</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:9.017%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:88.783%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Exhibit<br/>Number</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Description of Documents</span></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.1</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000114420406017811/v041726fiberstarsdef14a.htm">Certificate of Incorporation of Energy Focus, Inc. (incorporated by reference to Appendix A to the Registrant&#8217;s Definitive Proxy Statement on Schedule 14A filed on May 1, 2006).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.2</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416820000013/ex32-10xk123119.htm">Certificate of Amendment to the Certificate of Incorporation of Energy Focus, Inc. filed with the Secretary of State of the State of Delaware on June 21, 2010 (incorporated by reference to Exhibit 3.2 to the Registrant&#8217;s Annual Report on Form 10-K filed on March 24, 2020).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.3</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416820000013/ex33-10xk123119.htm">Certificate of Amendment to the Certificate of Incorporation of Energy Focus, Inc. filed with the Secretary of State of the State of Delaware on October 9, 2012 (incorporated by reference to Exhibit 3.3 to the Registrant&#8217;s Annual Report on Form 10-K filed on March 24, 2020).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.4</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416820000013/ex34-10xk123119.htm">Certificate of Amendment to the Certificate of Incorporation of Energy Focus, Inc. filed with the Secretary of State of the State of Delaware on October 28, 2013 (incorporated by reference to Exhibit 3.4 to the Registrant&#8217;s Annual Report on Form 10-K filed on March 24, 2020).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.5</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000143774914012834/ex3-1.htm">Certificate of Amendment to the Certificate of Incorporation of Energy Focus, Inc. filed with the Secretary of State of the State of Delaware on July 16, 2014 (incorporated by reference to Exhibit 3.1 to the Registrant&#8217;s Current Report on Form 8-K filed on July 16, 2014).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000162828015005460/exhibitno31certificateof.htm">Certificate of Amendment to the Certificate of Incorporation of Energy Focus, Inc. filed with the Secretary of State of the State of Delaware on July 24, 2015 (incorporated by reference to Exhibit 3.1 to the Registrant&#8217;s Current Report on Form 8-K filed on July 27, 2015).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.7</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416820000013/ex32-10xk123119.htm">Certificate of Amendment to the Certificate of Incorporation of Energy Focus, Inc. filed with the Secretary of State of the State of Delaware on January 15, 2020 (incorporated by reference to Exhibit 3.7 to the Registrant&#8217;s Annual Report on Form 10-K filed on March 24, 2020).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.8</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416819000020/ex31-certofdesigpstk.htm">Certificate of Designation of Series A Convertible Preferred Stock of Energy Focus, Inc. (incorporated by reference to Exhibit 3.1 to the Registrant&#8217;s Current Report on Form 8-K filed on April 1, 2019).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.9</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416819000044/ex31amendcertofdesignat.htm">Amendment to the Certificate of Designation of Series A Convertible Preferred Stock of Energy Focus, Inc. (incorporated by reference to Exhibit 3.1 to the Registrant&#8217;s Current Report on Form 8-K filed on May 30, 2019).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.10</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416820000013/ex310-10xk123119.htm">Amendment to the Certificate of Designation of Series A Convertible Preferred Stock of Energy Focus, Inc. filed with the Secretary of State of the State of Delaware on January 15, 2020 (incorporated by reference to Exhibit 3.10 to the Registrant&#8217;s Annual Report on Form 10-K filed on March 24, 2020).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.11</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416820000054/exhibit31certificateof.htm">Certificate of Amendment of Certificate of Incorporation, dated June 11, 2020 (incorporated by reference to Exhibit 3.1 to the Registrant&#8217;s Current Report on Form 8-K filed on June 11, 2020).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.12</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416820000044/exhibit31bylawsofenerg.htm">Bylaws of Energy Focus, Inc. (incorporated by reference to Exhibit 3.1 to the Registrant&#8217;s Current Report on Form 8-K filed on May 18, 2020).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.13</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416820000013/ex310-10xk123119.htm">Certificate of Ownership and Merger, Merging Energy Focus, Inc., a Delaware corporation, into Fiberstars, Inc., a Delaware corporation, filed with the Secretary of State of the State of Delaware on May 4, 2007 (incorporated by reference to Exhibit 3.1 to the Registrant&#8217;s Quarterly Report on Form 10-Q filed on May 10, 2007).</a></span></div></td></tr><tr style="height:6pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.1</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416821000021/a202104ex101firstamendment.htm">First Amendment to Loan and Security Agreement, dated as of April 20, 2021 by and between the Company and Crossroads Financial Group, LLC (incorporated by reference to Exhibit 10.1 to the Registrant&#8217;s Current Report on Form 8-K filed on April 21, 2021).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.2</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416821000024/a202104ex101notepurchaseag.htm">Note Purchase Agreement, dated as of April 2</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416821000024/a202104ex101notepurchaseag.htm">7</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416821000024/a202104ex101notepurchaseag.htm">, 2021 by and between the Company and Streeterville Capital, LLC (incorporated by reference to Exhibit 10.1 to the Registrant&#8217;s Current Report on Form 8-K filed on April 2</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416821000024/a202104ex101notepurchaseag.htm">8</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416821000024/a202104ex101notepurchaseag.htm">, 2021).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.3</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416821000024/a202104ex102promissorynote.htm">Promissory Note, dated as of April 2</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416821000024/a202104ex102promissorynote.htm">7</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416821000024/a202104ex102promissorynote.htm">, 2021 by and between the Company and Streeterville Capital, LLC (incorporated by reference to Exhibit 10.2 in the Registrant&#8217;s Current Report on Form 8-K filed on April 2</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416821000024/a202104ex102promissorynote.htm">8</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="http://www.sec.gov/Archives/edgar/data/924168/000092416821000024/a202104ex102promissorynote.htm">, 2021).</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31.1+</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="a20210331exhibit31110-q.htm">Certification of Chief Executive Officer Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31.2+</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="a20210331exhibit31210-q.htm">Certification of Chief Financial Officer Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32.1++</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="a20210331exhibit32110-q.htm">Certification of Chief Executive Officer and Chief Financial Officer Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr></table></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">41</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:36pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:9.017%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:88.783%"></td><td style="width:0.1%"></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*101</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">The following financial information from our Quarterly Report for the quarter ended March&#160;31, 2021, formatted in XBRL (eXtensible Business Reporting Language): (i) Condensed Consolidated Balance Sheets at March&#160;31, 2021 and December&#160;31, 2020, (ii) Condensed Consolidated Statements of Operations for the three months ended March&#160;31, 2021 and 2020, (iii) Condensed Consolidated Statements of Comprehensive Loss for the three months ended March&#160;31, 2021 and 2020, (iv) Condensed Consolidated Statements of Changes in Stockholders&#8217; Equity for the three months ended March&#160;31, 2021 and 2020, (v) Condensed Consolidated Statements of Cash Flows for the three months ended March 31, 2021 and 2020, and (vi) the Notes to Condensed Consolidated Financial Statements.</span></div></td></tr><tr style="height:5pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*104</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cover Page Interactive Data File (embedded within the Inline XBRL document)</span></td></tr></table></div><div style="padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">*&#160;&#160;&#160;&#160;Pursuant to Regulation S-T, this interactive data file is not deemed filed for purposes of Section 11 of the Securities Act, or Section 18 of the Exchange Act, or otherwise subject to the liabilities of these sections.</span></div><div style="padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">+ &#160;&#160;&#160;&#160;Filed herewith.</span></div><div style="padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">++  This exhibit shall not be deemed &#8220;filed&#8221; for purposes of Section 18 of the Exchange Act or otherwise subject to the liability of that section. Such exhibit shall not be deemed incorporated into any filing under the Securities Act or the Exchange Act.</span></div><div style="padding-left:18pt;text-indent:-18pt"><span><br/></span></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">42</span></div></div></div><div id="ia1987147ec8946e7a79d46893e4b989b_157"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SIGNATURES</span></div><div style="text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.</span></div><div style="text-indent:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:98.245%"><tr><td style="width:1.0%"></td><td style="width:4.405%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:48.304%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.513%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:39.378%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">ENERGY FOCUS, INC.</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 13, 2021</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ James Tu</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">James Tu</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Executive Chairman and Chief Executive Officer</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">(Principal Executive Officer)</span></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:5.186%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:48.169%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.432%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:38.813%"></td><td style="width:0.1%"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May&#160;13, 2021</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Tod A. Nestor</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tod A. Nestor</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and Chief Financial Officer</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">(Principal Financial and Accounting Officer)</span></td></tr></table></div><div><span><br/></span></div><div style="height:45pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">43</span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>a20210331exhibit31110-q.htm
<DESCRIPTION>EX-31.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2021 Workiva -->
<title>Document</title></head><body><div id="i6a42a47b382e4cc3aadfe9ddf9d8039f_1"></div><div style="min-height:36pt;width:100%"><div style="padding-right:4.5pt;text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:130%">EXHIBIT 31.1</font></div></div><div style="padding-right:4.5pt;text-align:right"><font><br></font></div><div style="padding-left:2.25pt;padding-right:2.25pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:130%">CERTIFICATION</font></div><div><font><br></font></div><div style="padding-right:4.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, James Tu, certify that&#58;</font></div><div style="padding-right:4.5pt"><font><br></font></div><div style="padding-left:18pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9pt">I have reviewed this Quarterly Report on Form 10-Q of Energy Focus, Inc.&#59;</font></div><div><font><br></font></div><div style="padding-left:18pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9pt">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report&#59;</font></div><div><font><br></font></div><div style="padding-left:18pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">3.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9pt">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report&#59;</font></div><div style="padding-left:18pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:18pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">4.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9pt">The registrant's other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and we have&#59;</font></div><div style="padding-left:18pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:54pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(a)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared&#59;</font></div><div style="padding-left:54pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:54pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(b)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles&#59;</font></div><div style="padding-left:54pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:54pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(c)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;Evaluated the effectiveness of the registrant's disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation&#59; and</font></div><div style="padding-left:54pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:54pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(d)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant's most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting&#59; and</font></div><div style="padding-left:54pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:18pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9pt">The registrant's other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of registrant's board of directors (or persons performing the equivalent functions)&#58;</font></div><div style="padding-left:36pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:54pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(a)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information&#59; and</font></div><div><font><br></font></div><div style="padding-left:54pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(b)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.</font></div><div style="padding-left:36pt"><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:130%">&#160;&#160;&#160;&#160;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:130%;text-decoration:underline">&#160;&#160;&#160;&#160;&#47;s&#47; James Tu&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:130%">&#160;&#160;&#160;&#160;James Tu <br>&#160;&#160;&#160;&#160;Executive Chairman and Chief Executive Officer</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Date&#58; May&#160;13, 2021 </font></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>a20210331exhibit31210-q.htm
<DESCRIPTION>EX-31.2
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2021 Workiva -->
<title>Document</title></head><body><div id="i43378344eab04c13af2b93cb1099285d_1"></div><div style="min-height:36pt;width:100%"><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:130%">EXHIBIT 31.2</font></div></div><div style="text-align:right"><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:130%">CERTIFICATION</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Tod A. Nestor, certify that&#58;</font></div><div style="padding-right:4.5pt"><font><br></font></div><div style="padding-left:18pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9pt">I have reviewed this Quarterly Report on Form 10-Q of Energy Focus, Inc.&#59;</font></div><div><font><br></font></div><div style="padding-left:18pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9pt">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report&#59;</font></div><div><font><br></font></div><div style="padding-left:18pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">3.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9pt">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report&#59;</font></div><div style="padding-left:18pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:18pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">4.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9pt">The registrant's other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and we have&#59;</font></div><div style="padding-left:18pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:54pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(a)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared&#59;</font></div><div style="padding-left:54pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:54pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(b)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles&#59;</font></div><div style="padding-left:54pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:54pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(c)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;Evaluated the effectiveness of the registrant's disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation&#59; and</font></div><div style="padding-left:54pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:54pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(d)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant's most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting&#59; and</font></div><div style="padding-left:54pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:18pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">5.</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9pt">The registrant's other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of registrant's board of directors (or persons performing the equivalent functions)&#58;</font></div><div style="padding-left:36pt;padding-right:4.5pt"><font><br></font></div><div style="padding-left:54pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(a)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information&#59; and</font></div><div><font><br></font></div><div style="padding-left:54pt;padding-right:4.5pt;text-indent:-18pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">(b)</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.</font></div><div style="padding-left:18pt"><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:130%">&#160;&#160;&#160;&#160;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:130%;text-decoration:underline">&#160;&#160;&#160;&#160;&#47;s&#47; Tod A. Nestor&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:130%">&#160;&#160;&#160;&#160;Tod A. Nestor</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:130%">&#160;&#160;&#160;&#160;President and Chief Financial Officer</font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:130%">&#160;&#160;&#160;&#160;Date&#58; May&#160;13, 2021 </font></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>a20210331exhibit32110-q.htm
<DESCRIPTION>EX-32.1
<TEXT>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2021 Workiva -->
<title>Document</title></head><body><div id="ia21cb89882dc4431954c043c56b1f0c5_1"></div><div style="min-height:36pt;width:100%"><div><font><br></font></div></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">EXHIBIT 32.1</font></div><div><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CERTIFICATION PURSUANT TO 18 U.S.C. SECTION 1350, AS ADOPTED</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PURSUANT TO SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</font></div><div><font><br></font></div><div style="padding-right:4.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:130%">In connection with the Quarterly Report on Form 10-Q of Energy Focus, Inc. (the &#8220;Company&#8221;) for the quarterly period ended March&#160;31, 2021 (the &#8220;Report&#8221;), I, James Tu, Executive Chairman and Chief Executive Officer of the Company and I, Tod A. Nestor, President and Chief Financial Officer of the Company, each certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes Oxley Act of 2002, that to the best of my knowledge&#58;</font></div><div style="padding-right:4.5pt"><font><br></font></div><div style="padding-right:4.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:130%">(i)   the Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934&#59; and</font></div><div style="padding-right:4.5pt"><font><br></font></div><div style="padding-right:4.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:130%">(ii)  the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</font></div><div><font><br></font></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:93.750%"><tr><td style="width:1.0%"></td><td style="width:55.937%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.270%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.677%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.716%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; James Tu</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">James Tu<br>Executive Chairman and Chief Executive Officer</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 13, 2021</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="text-align:center"><font><br></font></div><div><font><br></font></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:95.416%"><tr><td style="width:1.0%"></td><td style="width:54.940%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.159%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:20.297%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.204%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Tod A. Nestor</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Tod A. Nestor<br>President and Chief Financial Officer</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Date&#58; </font></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 13, 2021</font></td><td colspan="3" style="padding:0 1pt"></td></tr><tr style="height:24pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A signed original of this written statement required by Section 906 has been provided to Energy Focus, Inc. and will be retained by Energy Focus, Inc. and furnished to the Securities and Exchange Commission or its staff upon request.</font></div><div><font><br></font></div><div style="height:36pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>5
<FILENAME>efoi-20210331.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:e2a4800e-2bee-4a0f-9ce7-c0f26b88321d,g:b231b6ec-e457-4087-8af0-4631d4401d22-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:efoi="http://www.energyfocusinc.com/20210331" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:num="http://www.xbrl.org/dtr/type/numeric" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.energyfocusinc.com/20210331">
  <xs:import namespace="http://fasb.org/srt/2020-01-31" schemaLocation="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap/2020-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd"/>
  <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="http://www.xbrl.org/2003/xlink-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2020-01-31" schemaLocation="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd"/>
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="efoi-20210331_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="efoi-20210331_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="efoi-20210331_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="efoi-20210331_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="CoverPage" roleURI="http://www.energyfocusinc.com/role/CoverPage">
        <link:definition>0001001 - Document - Cover Page</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedBalanceSheets" roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets">
        <link:definition>1001002 - Statement - Condensed Consolidated Balance Sheets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedBalanceSheetsParentheticals" roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals">
        <link:definition>1002003 - Statement - Condensed Consolidated Balance Sheets (Parentheticals)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedStatementsofOperationsUnaudited" roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited">
        <link:definition>1003004 - Statement - Condensed Consolidated Statements of Operations (Unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedStatementsofOperationsUnauditedParenthetical" roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical">
        <link:definition>1004005 - Statement - Condensed Consolidated Statements of Operations (Unaudited) (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedStatementsofComprehensiveLossUnaudited" roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited">
        <link:definition>1005006 - Statement - Condensed Consolidated Statements of Comprehensive Loss (Unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited" roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited">
        <link:definition>1006007 - Statement - Condensed Consolidated Statements of Changes in Stockholders' Equity (Unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical" roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical">
        <link:definition>1007008 - Statement - Condensed Consolidated Statements of Changes in Stockholders' Equity (Unaudited) (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CondensedConsolidatedStatementsofCashFlowsUnaudited" roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited">
        <link:definition>1008009 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="NatureofOperations" roleURI="http://www.energyfocusinc.com/role/NatureofOperations">
        <link:definition>2101101 - Disclosure - Nature of Operations</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="NatureofOperationsDetails" roleURI="http://www.energyfocusinc.com/role/NatureofOperationsDetails">
        <link:definition>2402401 - Disclosure - Nature of Operations (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPolicies" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies">
        <link:definition>2103102 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies">
        <link:definition>2204201 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPoliciesTables" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables">
        <link:definition>2305301 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails">
        <link:definition>2406402 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Certain Risks and Concentrations (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails">
        <link:definition>2407403 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Disaggregation of Revenue (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails">
        <link:definition>2408404 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Reconciliation of Basic and Diluted Loss per Share (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails">
        <link:definition>2409405 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Net Loss per Share (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails">
        <link:definition>2410406 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Product Warranties (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails">
        <link:definition>2411407 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Warranty Activity (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails">
        <link:definition>2412408 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Financial Instruments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails">
        <link:definition>2413409 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Financial Assets and Liabilities Measured at Fair Value (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails">
        <link:definition>2414410 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Fair Value Inputs (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails" roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails">
        <link:definition>2415411 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Rollforward of Fair Value Measurements (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Restructuring" roleURI="http://www.energyfocusinc.com/role/Restructuring">
        <link:definition>2116103 - Disclosure - Restructuring</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RestructuringTables" roleURI="http://www.energyfocusinc.com/role/RestructuringTables">
        <link:definition>2317302 - Disclosure - Restructuring (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RestructuringNarrativeDetails" roleURI="http://www.energyfocusinc.com/role/RestructuringNarrativeDetails">
        <link:definition>2418412 - Disclosure - Restructuring - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RestructuringReconciliationofRestructuringLiabilityDetails" roleURI="http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails">
        <link:definition>2419413 - Disclosure - Restructuring - Reconciliation of Restructuring Liability (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Inventories" roleURI="http://www.energyfocusinc.com/role/Inventories">
        <link:definition>2120104 - Disclosure - Inventories</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InventoriesTables" roleURI="http://www.energyfocusinc.com/role/InventoriesTables">
        <link:definition>2321303 - Disclosure - Inventories (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InventoriesInventoriesNetDetails" roleURI="http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails">
        <link:definition>2422414 - Disclosure - Inventories - Inventories, Net (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InventoriesReserveRollforwardDetails" roleURI="http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails">
        <link:definition>2423415 - Disclosure - Inventories - Reserve Rollforward (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyandEquipment" roleURI="http://www.energyfocusinc.com/role/PropertyandEquipment">
        <link:definition>2124105 - Disclosure - Property and Equipment</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyandEquipmentTables" roleURI="http://www.energyfocusinc.com/role/PropertyandEquipmentTables">
        <link:definition>2325304 - Disclosure - Property and Equipment (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PropertyandEquipmentScheduleofPropertyandEquipmentDetails" roleURI="http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails">
        <link:definition>2426416 - Disclosure - Property and Equipment - Schedule of Property and Equipment (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Leases" roleURI="http://www.energyfocusinc.com/role/Leases">
        <link:definition>2127106 - Disclosure - Leases</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesTables" roleURI="http://www.energyfocusinc.com/role/LeasesTables">
        <link:definition>2328305 - Disclosure - Leases (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesNarrativeDetails" roleURI="http://www.energyfocusinc.com/role/LeasesNarrativeDetails">
        <link:definition>2429417 - Disclosure - Leases - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesComponentsofLeaseCostDetails" roleURI="http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails">
        <link:definition>2430418 - Disclosure - Leases - Components of Lease Cost (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesScheduleofSupplementalBalanceSheetInformationDetails" roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails">
        <link:definition>2431419 - Disclosure - Leases - Schedule of Supplemental Balance Sheet Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails" roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails">
        <link:definition>2432420 - Disclosure - Leases - Schedule of Future Maturities of Lease Liabilities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1" roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1">
        <link:definition>2432420 - Disclosure - Leases - Schedule of Future Maturities of Lease Liabilities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesScheduleofSupplementalCashFlowInformationDetails" roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails">
        <link:definition>2433421 - Disclosure - Leases - Schedule of Supplemental Cash Flow Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Debt" roleURI="http://www.energyfocusinc.com/role/Debt">
        <link:definition>2134107 - Disclosure - Debt</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DebtCreditFacilitiesDetails" roleURI="http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails">
        <link:definition>2435422 - Disclosure - Debt - Credit Facilities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DebtConvertibleNotesDetails" roleURI="http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails">
        <link:definition>2436423 - Disclosure - Debt - Convertible Notes (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DebtIliadNoteDetails" roleURI="http://www.energyfocusinc.com/role/DebtIliadNoteDetails">
        <link:definition>2437424 - Disclosure - Debt - Iliad Note (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DebtStreetervilleNoteDetails" roleURI="http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails">
        <link:definition>2438425 - Disclosure - Debt - Streeterville Note (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DebtPPPLoanDetails" roleURI="http://www.energyfocusinc.com/role/DebtPPPLoanDetails">
        <link:definition>2439426 - Disclosure - Debt - PPP Loan (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxes" roleURI="http://www.energyfocusinc.com/role/IncomeTaxes">
        <link:definition>2140108 - Disclosure - Income Taxes</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesNarrativeDetails" roleURI="http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails">
        <link:definition>2441427 - Disclosure - Income Taxes - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquity" roleURI="http://www.energyfocusinc.com/role/StockholdersEquity">
        <link:definition>2142109 - Disclosure - Stockholders' Equity</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityTables" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityTables">
        <link:definition>2343306 - Disclosure - Stockholders' Equity (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityStockSplitDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockSplitDetails">
        <link:definition>2444428 - Disclosure - Stockholders' Equity - Stock Split (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityPreferredStockDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails">
        <link:definition>2445429 - Disclosure - Stockholders' Equity - Preferred Stock (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityIssuanceofCommonStockandWarrantsDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails">
        <link:definition>2446430 - Disclosure - Stockholders' Equity - Issuance of Common Stock and Warrants (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityWarrantsDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityWarrantsDetails">
        <link:definition>2447431 - Disclosure - Stockholders' Equity - Warrants (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityScheduleofWarrantsOutstandingDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails">
        <link:definition>2448432 - Disclosure - Stockholders' Equity - Schedule of Warrants Outstanding (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityStockBasedCompensationDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails">
        <link:definition>2449433 - Disclosure - Stockholders' Equity - Stock-Based Compensation (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityEstimatesUtilizedDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails">
        <link:definition>2450434 - Disclosure - Stockholders' Equity - Estimates Utilized (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityStockOptionsandaSummaryofActivityDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails">
        <link:definition>2451435 - Disclosure - Stockholders' Equity - Stock Options and a Summary of Activity (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityRestrictedStockUnitsDetails" roleURI="http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails">
        <link:definition>2452436 - Disclosure - Stockholders' Equity - Restricted Stock Units (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentsandContingencies" roleURI="http://www.energyfocusinc.com/role/CommitmentsandContingencies">
        <link:definition>2153110 - Disclosure - Commitments and Contingencies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentsandContingenciesDetails" roleURI="http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails">
        <link:definition>2454437 - Disclosure - Commitments and Contingencies (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SubsequentEvents" roleURI="http://www.energyfocusinc.com/role/SubsequentEvents">
        <link:definition>2155111 - Disclosure - Subsequent Events</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SubsequentEventsDetails" roleURI="http://www.energyfocusinc.com/role/SubsequentEventsDetails">
        <link:definition>2456438 - Disclosure - Subsequent Events (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:element id="efoi_RegionalCommercialLightingRetrofitCompanyMember" abstract="true" name="RegionalCommercialLightingRetrofitCompanyMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_NotePurchaseAgreementMember" abstract="true" name="NotePurchaseAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_PaymentsForPlacementAgentCommissions" abstract="false" name="PaymentsForPlacementAgentCommissions" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_LineOfCreditFacilityCollateralManagementFee" abstract="false" name="LineOfCreditFacilityCollateralManagementFee" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" abstract="false" name="RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" abstract="false" name="ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" abstract="false" name="RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" abstract="false" name="DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_OperatingLeaseLiabilityIncludingRestructuredLeases" abstract="false" name="OperatingLeaseLiabilityIncludingRestructuredLeases" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_LineOfCreditFacilityAnnualFacilityFeePeriod" abstract="false" name="LineOfCreditFacilityAnnualFacilityFeePeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" abstract="false" name="NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" abstract="false" name="RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_RestructuredOperatingLeaseRightOfUseAsset" abstract="false" name="RestructuredOperatingLeaseRightOfUseAsset" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_DebtInstrumentPrepaymentPremiumPercent" abstract="false" name="DebtInstrumentPrepaymentPremiumPercent" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="efoi_LesseeOperatingLeaseInterestRateEffectiveRate" abstract="false" name="LesseeOperatingLeaseInterestRateEffectiveRate" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="efoi_A2017RestructuringPlanMember" abstract="true" name="A2017RestructuringPlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_ToolingMember" abstract="false" name="ToolingMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_ClassOfWarrantOrRightWarrantsIssued" abstract="false" name="ClassOfWarrantOrRightWarrantsIssued" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" abstract="false" name="RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_RestructuringReserveAccretion" abstract="false" name="RestructuringReserveAccretion" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_MMMProductsMember" abstract="true" name="MMMProductsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_CommercialProductsMember" abstract="true" name="CommercialProductsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_IncreaseDecreaseInProvisionForWarranties" abstract="false" name="IncreaseDecreaseInProvisionForWarranties" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_FusionParkMember" abstract="true" name="FusionParkMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_FinanceLeaseRightOfUseAssetMember" abstract="true" name="FinanceLeaseRightOfUseAssetMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare" abstract="false" name="ClassOfWarrantOrRightWarrantsIssuedPricePerShare" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:perShareItemType"/>
  <xs:element id="efoi_OperatingLeaseReceivable" abstract="false" name="OperatingLeaseReceivable" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_LineOfCreditFacilityMonthlyFacilityFeePercent" abstract="false" name="LineOfCreditFacilityMonthlyFacilityFeePercent" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock" abstract="false" name="NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_NewCreditFacilitiesMember" abstract="true" name="NewCreditFacilitiesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_DSeriesLampsMember" abstract="true" name="DSeriesLampsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_PaymentsForClearingFees" abstract="false" name="PaymentsForClearingFees" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_PaymentProtectionProgramNoncurrent" abstract="false" name="PaymentProtectionProgramNoncurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" abstract="false" name="LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" abstract="false" name="LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount" abstract="false" name="LessorOperatingLeaseLiabilityUndiscountedExcessAmount" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_StandardProductWarrantyNumberofYears" abstract="false" name="StandardProductWarrantyNumberofYears" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations" abstract="false" name="DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_RestructuredLeasesOperatingLeasePayments" abstract="false" name="RestructuredLeasesOperatingLeasePayments" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue" abstract="false" name="RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm" abstract="false" name="RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="efoi_RestructuredOperatingLeaseLiabilityCurrent" abstract="false" name="RestructuredOperatingLeaseLiabilityCurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" abstract="false" name="DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember" abstract="true" name="DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_FinanceLeaseRightOfUseAssetGross" abstract="false" name="FinanceLeaseRightOfUseAssetGross" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_DistributorToTheU.S.NavyMember" abstract="true" name="DistributorToTheU.S.NavyMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_AustinCreditFacilityMember" abstract="true" name="AustinCreditFacilityMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_InventoryReserveRollForward" abstract="true" name="InventoryReserveRollForward" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" abstract="false" name="SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType"/>
  <xs:element id="efoi_OperatingLeaseCostNetOfSubleaseIncome" abstract="false" name="OperatingLeaseCostNetOfSubleaseIncome" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_DebtInstrumentProceedsToBePaidToLenderPercent" abstract="false" name="DebtInstrumentProceedsToBePaidToLenderPercent" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="efoi_InstitutionalInvestorMember" abstract="true" name="InstitutionalInvestorMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" abstract="false" name="DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="efoi_RestructuredOperatingLeaseLiability" abstract="false" name="RestructuredOperatingLeaseLiability" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_DomesticSupplierMember" abstract="true" name="DomesticSupplierMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_DebtPrepaymentMaximumPercentage" abstract="false" name="DebtPrepaymentMaximumPercentage" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="efoi_InventoryValuationReservesSalesOfInventory" abstract="false" name="InventoryValuationReservesSalesOfInventory" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_AustinFacilityMember" abstract="true" name="AustinFacilityMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_OtherLEDProductsMember" abstract="true" name="OtherLEDProductsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_PercentageOfSeriesAPreferredStockEligibleToVote" abstract="false" name="PercentageOfSeriesAPreferredStockEligibleToVote" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="efoi_LEDFLTubularLEDLampsExcludingRedCapsMember" abstract="true" name="LEDFLTubularLEDLampsExcludingRedCapsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_LineOfCreditFacilityMonthlyFacilityFee" abstract="false" name="LineOfCreditFacilityMonthlyFacilityFee" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" abstract="true" name="RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" abstract="false" name="FinanceLeaseRightOfUseAssetAccumulatedDepreciation" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_StreetervilleNotePurchaseAgreementMember" abstract="true" name="StreetervilleNotePurchaseAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" abstract="false" name="RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_InventoryValuationReservesProvisionAccrual" abstract="false" name="InventoryValuationReservesProvisionAccrual" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember" abstract="true" name="CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_ReceivablesFacilityMember" abstract="true" name="ReceivablesFacilityMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_OffshoreSupplierMember" abstract="true" name="OffshoreSupplierMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_BrilliantStartMember" abstract="true" name="BrilliantStartMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_RestructuredLeaseSubleaseIncome" abstract="false" name="RestructuredLeaseSubleaseIncome" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock" abstract="false" name="LeaseSupplementalBalanceSheetInformationTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType"/>
  <xs:element id="efoi_InventoryValuationReservesRawMaterials" abstract="false" name="InventoryValuationReservesRawMaterials" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_DebtInstrumentNumberOfCreditFacilities" abstract="false" name="DebtInstrumentNumberOfCreditFacilities" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" abstract="false" name="RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_RestructuredLeaseOperatingLeaseCost" abstract="false" name="RestructuredLeaseOperatingLeaseCost" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent" abstract="false" name="LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="num:percentItemType"/>
  <xs:element id="efoi_AccumulatedInterestOnSubordinatedDebt" abstract="false" name="AccumulatedInterestOnSubordinatedDebt" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption" abstract="false" name="DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="efoi_InventoryFacilityMember" abstract="true" name="InventoryFacilityMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_PaymentProtectionProgramCurrent" abstract="false" name="PaymentProtectionProgramCurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_ProceedsFromIssuanceOfCommonStockAndWarrants" abstract="false" name="ProceedsFromIssuanceOfCommonStockAndWarrants" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases" abstract="false" name="OperatingLeaseRightofUseAssetIncludingRestructuredLeases" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" abstract="false" name="PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="efoi_PaycheckProtectionProgramCARESActMember" abstract="true" name="PaycheckProtectionProgramCARESActMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_ShipbuilderForUSNavyMember" abstract="true" name="ShipbuilderForUSNavyMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="nonnum:domainItemType"/>
  <xs:element id="efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" abstract="false" name="RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>6
<FILENAME>efoi-20210331_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:e2a4800e-2bee-4a0f-9ce7-c0f26b88321d,g:b231b6ec-e457-4087-8af0-4631d4401d22-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CoverPage" xlink:type="simple" xlink:href="efoi-20210331.xsd#CoverPage"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CoverPage" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedBalanceSheets"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_68195415-6a87-4a69-8fb9-be218e92a7a7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_a769445b-6b5e-437a-bfd2-d9fd7c1dde1a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Liabilities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_68195415-6a87-4a69-8fb9-be218e92a7a7" xlink:to="loc_us-gaap_Liabilities_a769445b-6b5e-437a-bfd2-d9fd7c1dde1a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_a1e27aa3-5e60-4743-a0c2-2f6b50e4b2e2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_68195415-6a87-4a69-8fb9-be218e92a7a7" xlink:to="loc_us-gaap_StockholdersEquity_a1e27aa3-5e60-4743-a0c2-2f6b50e4b2e2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_558903c3-6bfe-46b6-b937-9098033ba04f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_1467e1ec-48bb-4dcc-afdf-15c5b209d1b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_558903c3-6bfe-46b6-b937-9098033ba04f" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_1467e1ec-48bb-4dcc-afdf-15c5b209d1b0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_5ed286a8-3c59-410d-bc9a-66748f3bea20" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_558903c3-6bfe-46b6-b937-9098033ba04f" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_5ed286a8-3c59-410d-bc9a-66748f3bea20" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_aee24ea8-ede7-4a89-8569-def13c83242d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryNet"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_558903c3-6bfe-46b6-b937-9098033ba04f" xlink:to="loc_us-gaap_InventoryNet_aee24ea8-ede7-4a89-8569-def13c83242d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepositsAssetsCurrent_44815920-f532-44e8-83ae-318759eac0c9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DepositsAssetsCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_558903c3-6bfe-46b6-b937-9098033ba04f" xlink:to="loc_us-gaap_DepositsAssetsCurrent_44815920-f532-44e8-83ae-318759eac0c9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_96df0397-22af-406b-81aa-bdc29cc191b8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_558903c3-6bfe-46b6-b937-9098033ba04f" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_96df0397-22af-406b-81aa-bdc29cc191b8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_06777713-6d7b-4cd8-8cae-8888bfdf16dc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_us-gaap_AccountsPayableCurrent_06777713-6d7b-4cd8-8cae-8888bfdf16dc" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_fa4be26c-cf9f-4cad-84b4-1780e791e3e9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_fa4be26c-cf9f-4cad-84b4-1780e791e3e9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedProfessionalFeesCurrent_42bbc4f9-f55e-43df-a592-c4c97c0dc67f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedProfessionalFeesCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_us-gaap_AccruedProfessionalFeesCurrent_42bbc4f9-f55e-43df-a592-c4c97c0dc67f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedEmployeeBenefitsCurrent_1af70734-bbaf-42f6-a123-185b0557e46f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_us-gaap_AccruedEmployeeBenefitsCurrent_1af70734-bbaf-42f6-a123-185b0557e46f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedSalesCommissionCurrent_4fc9429f-1f1e-40e8-a625-3dd96b536c10" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedSalesCommissionCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_us-gaap_AccruedSalesCommissionCurrent_4fc9429f-1f1e-40e8-a625-3dd96b536c10" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveCurrent_42b2008e-4bfb-4d23-871f-651765e81909" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserveCurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_us-gaap_RestructuringReserveCurrent_42b2008e-4bfb-4d23-871f-651765e81909" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualCurrent_19369e6b-6e59-4585-8759-68c0bae09021" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StandardProductWarrantyAccrualCurrent"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualCurrent_19369e6b-6e59-4585-8759-68c0bae09021" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_e68410f3-f771-48d5-b397-b6e2dc7edb16" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_e68410f3-f771-48d5-b397-b6e2dc7edb16" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseLiabilityCurrent_bc10802d-eb3d-4035-90af-4683538f51c2" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_efoi_RestructuredOperatingLeaseLiabilityCurrent_bc10802d-eb3d-4035-90af-4683538f51c2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent_c8ace99b-d1f9-410e-a84d-91619010454f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrent_c8ace99b-d1f9-410e-a84d-91619010454f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentProtectionProgramCurrent_0ef6869b-f7ba-47ff-bdf2-29ad8431550f" xlink:href="efoi-20210331.xsd#efoi_PaymentProtectionProgramCurrent"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_efoi_PaymentProtectionProgramCurrent_0ef6869b-f7ba-47ff-bdf2-29ad8431550f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LinesOfCreditCurrent_a6f1a27b-0a47-4c5d-ab53-69365a5cb334" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LinesOfCreditCurrent"/>
    <link:calculationArc order="12" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_us-gaap_LinesOfCreditCurrent_a6f1a27b-0a47-4c5d-ab53-69365a5cb334" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_2c25b639-3ccb-4e53-bc3b-8841c921d580" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:calculationArc order="13" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_4eb144b0-3ab4-4f18-b876-a644d554ce7b" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_2c25b639-3ccb-4e53-bc3b-8841c921d580" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_94f111e6-6817-4513-9108-601539ce8f85" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_7ee6d105-8326-4b2e-bfa1-f81f62b94444" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_94f111e6-6817-4513-9108-601539ce8f85" xlink:to="loc_us-gaap_AssetsCurrent_7ee6d105-8326-4b2e-bfa1-f81f62b94444" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_aa08fa13-9138-4a92-b452-a3e8e862d6fd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_94f111e6-6817-4513-9108-601539ce8f85" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_aa08fa13-9138-4a92-b452-a3e8e862d6fd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_f917834b-4c8d-4fe2-b4e4-bf035253a090" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_94f111e6-6817-4513-9108-601539ce8f85" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_f917834b-4c8d-4fe2-b4e4-bf035253a090" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseRightOfUseAsset_4ecb5ab7-e822-4863-be4c-dc39b47722a2" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_94f111e6-6817-4513-9108-601539ce8f85" xlink:to="loc_efoi_RestructuredOperatingLeaseRightOfUseAsset_4ecb5ab7-e822-4863-be4c-dc39b47722a2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_11f3b0db-6841-477a-96eb-08b5c4b63c60" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Liabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_0de2d519-fd6d-469d-be67-d8ddf45e47e0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_11f3b0db-6841-477a-96eb-08b5c4b63c60" xlink:to="loc_us-gaap_LiabilitiesCurrent_0de2d519-fd6d-469d-be67-d8ddf45e47e0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_42406bf1-7a34-41fd-8e20-5e3f374fd533" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_11f3b0db-6841-477a-96eb-08b5c4b63c60" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_42406bf1-7a34-41fd-8e20-5e3f374fd533" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_faff2636-db88-4c7a-9127-2b63a9a23426" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_11f3b0db-6841-477a-96eb-08b5c4b63c60" xlink:to="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_faff2636-db88-4c7a-9127-2b63a9a23426" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentProtectionProgramNoncurrent_01f22085-2d3e-4b2f-bfcf-2d0e7ecf14d5" xlink:href="efoi-20210331.xsd#efoi_PaymentProtectionProgramNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_11f3b0db-6841-477a-96eb-08b5c4b63c60" xlink:to="loc_efoi_PaymentProtectionProgramNoncurrent_01f22085-2d3e-4b2f-bfcf-2d0e7ecf14d5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_77653846-72c9-4a39-bfec-2afa94f11acb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_993a931f-8c2b-4e33-82e4-006b28487d29" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_77653846-72c9-4a39-bfec-2afa94f11acb" xlink:to="loc_us-gaap_PreferredStockValue_993a931f-8c2b-4e33-82e4-006b28487d29" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_e25dcdcc-5272-4161-b0b7-7f727be0e9d8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockValue"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_77653846-72c9-4a39-bfec-2afa94f11acb" xlink:to="loc_us-gaap_CommonStockValue_e25dcdcc-5272-4161-b0b7-7f727be0e9d8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_67f364bc-38db-4884-9761-1e36a1dbba53" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_77653846-72c9-4a39-bfec-2afa94f11acb" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_67f364bc-38db-4884-9761-1e36a1dbba53" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_1f60f7cd-70b8-4433-96dc-96e1e19b1727" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_77653846-72c9-4a39-bfec-2afa94f11acb" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_1f60f7cd-70b8-4433-96dc-96e1e19b1727" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_d6f148d1-b0e5-4271-9ff9-b25c3630a711" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_77653846-72c9-4a39-bfec-2afa94f11acb" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_d6f148d1-b0e5-4271-9ff9-b25c3630a711" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedBalanceSheetsParentheticals"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofOperationsUnaudited"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_caf73ae7-6536-4524-9372-0bf2dc2219b4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_6f2beb99-b18d-43c2-a298-d699422b6ce1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_caf73ae7-6536-4524-9372-0bf2dc2219b4" xlink:to="loc_us-gaap_OperatingIncomeLoss_6f2beb99-b18d-43c2-a298-d699422b6ce1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_3d6b4bad-fdf8-4e0d-b5e0-a039f97fb5f5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestExpense"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_caf73ae7-6536-4524-9372-0bf2dc2219b4" xlink:to="loc_us-gaap_InterestExpense_3d6b4bad-fdf8-4e0d-b5e0-a039f97fb5f5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_0c6d8ab0-08de-4f49-b9b2-41fdcdf0a0df" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_caf73ae7-6536-4524-9372-0bf2dc2219b4" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_0c6d8ab0-08de-4f49-b9b2-41fdcdf0a0df" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAdjustmentOfWarrants_3d226251-1086-4cc3-b5cd-87a03338fb29" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAdjustmentOfWarrants"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_caf73ae7-6536-4524-9372-0bf2dc2219b4" xlink:to="loc_us-gaap_FairValueAdjustmentOfWarrants_3d226251-1086-4cc3-b5cd-87a03338fb29" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_c92892ba-25b1-4537-a7f8-d64f00a03b88" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_caf73ae7-6536-4524-9372-0bf2dc2219b4" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_c92892ba-25b1-4537-a7f8-d64f00a03b88" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_8f483276-0159-4c3d-a344-19767289027f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_c8296442-dc47-46b7-abbd-35df3f70fabf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Revenues"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_8f483276-0159-4c3d-a344-19767289027f" xlink:to="loc_us-gaap_Revenues_c8296442-dc47-46b7-abbd-35df3f70fabf" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_3b381372-f1ac-49ed-a29c-fcf81c98c72d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_8f483276-0159-4c3d-a344-19767289027f" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_3b381372-f1ac-49ed-a29c-fcf81c98c72d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_20b0ad73-ed24-4885-8668-4cfe14d4e599" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_e4fc9bd0-4e41-45f3-bb97-bc4f1c580c2b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_20b0ad73-ed24-4885-8668-4cfe14d4e599" xlink:to="loc_us-gaap_GrossProfit_e4fc9bd0-4e41-45f3-bb97-bc4f1c580c2b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_0723576a-b5da-4155-81a0-60a276b504d0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingExpenses"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_20b0ad73-ed24-4885-8668-4cfe14d4e599" xlink:to="loc_us-gaap_OperatingExpenses_0723576a-b5da-4155-81a0-60a276b504d0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_10d547e9-dec0-404d-8e28-c9787cfdc875" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingExpenses"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_fd8f08cd-610d-4b42-bb56-11dae41cc7eb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_10d547e9-dec0-404d-8e28-c9787cfdc875" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_fd8f08cd-610d-4b42-bb56-11dae41cc7eb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_8cddbbe6-95ca-4edf-bde6-139a29d7e73b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_10d547e9-dec0-404d-8e28-c9787cfdc875" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_8cddbbe6-95ca-4edf-bde6-139a29d7e73b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCosts_3bf8aabe-9c55-4e9b-a27a-98cefc5394f1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringCosts"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_10d547e9-dec0-404d-8e28-c9787cfdc875" xlink:to="loc_us-gaap_RestructuringCosts_3bf8aabe-9c55-4e9b-a27a-98cefc5394f1" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofOperationsUnauditedParenthetical"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofComprehensiveLossUnaudited"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_decc5378-5ad1-40cf-aae1-e2c66ea4f218" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_acafb620-ae7e-43b9-be68-4d7cadc52721" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_decc5378-5ad1-40cf-aae1-e2c66ea4f218" xlink:to="loc_us-gaap_NetIncomeLoss_acafb620-ae7e-43b9-be68-4d7cadc52721" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_42031916-988b-47b7-a27f-cbe6b410a251" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_decc5378-5ad1-40cf-aae1-e2c66ea4f218" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_42031916-988b-47b7-a27f-cbe6b410a251" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofCashFlowsUnaudited"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_32decf4f-1cef-420f-815b-8ebfd24ebca1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_855c18fc-b795-46bb-b342-028cccddd313" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_32decf4f-1cef-420f-815b-8ebfd24ebca1" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_855c18fc-b795-46bb-b342-028cccddd313" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_56d22760-4277-43c5-a1f3-255db5557fd4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_e39e9310-9133-48bd-aae7-6f22f2e660ac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_56d22760-4277-43c5-a1f3-255db5557fd4" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_e39e9310-9133-48bd-aae7-6f22f2e660ac" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCash_b56fd8c2-11e6-4dfd-83fd-0dcdebbcd98b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCash"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_56d22760-4277-43c5-a1f3-255db5557fd4" xlink:to="loc_us-gaap_RestrictedCash_b56fd8c2-11e6-4dfd-83fd-0dcdebbcd98b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_009a51f5-2cdc-4e72-a4fa-f5d459f36605" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_009a51f5-2cdc-4e72-a4fa-f5d459f36605" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_6312d87b-6c93-47b8-b667-a7e2a9983518" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Depreciation"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_Depreciation_6312d87b-6c93-47b8-b667-a7e2a9983518" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_f54f3d70-2b6a-4f69-884e-ee752455694f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensation"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_ShareBasedCompensation_f54f3d70-2b6a-4f69-884e-ee752455694f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAdjustmentOfWarrants_a301d61a-89c7-4d22-b645-7d1e37152ebc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAdjustmentOfWarrants"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_FairValueAdjustmentOfWarrants_a301d61a-89c7-4d22-b645-7d1e37152ebc" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_298bcd25-5788-42f8-8b90-f3fc481d8a1f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_298bcd25-5788-42f8-8b90-f3fc481d8a1f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown_ce7bf5a2-648d-4514-958f-939ee8b8a91e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryWriteDown"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_InventoryWriteDown_ce7bf5a2-648d-4514-958f-939ee8b8a91e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_IncreaseDecreaseInProvisionForWarranties_7a66b269-e825-4e0e-955d-53a7d77e081d" xlink:href="efoi-20210331.xsd#efoi_IncreaseDecreaseInProvisionForWarranties"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_efoi_IncreaseDecreaseInProvisionForWarranties_7a66b269-e825-4e0e-955d-53a7d77e081d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet_2b7a698e-9859-4a03-904b-ee5c4a153fa5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AmortizationOfDeferredLoanOriginationFeesNet"/>
    <link:calculationArc order="8" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet_2b7a698e-9859-4a03-904b-ee5c4a153fa5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_5a11d280-3bf7-4e6d-abd2-d30993362369" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:calculationArc order="9" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_5a11d280-3bf7-4e6d-abd2-d30993362369" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_d187917a-27d0-4a90-add6-b1fd587aceef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:calculationArc order="10" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_d187917a-27d0-4a90-add6-b1fd587aceef" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets_f5f6f471-4080-4386-8d55-44b4d93e2866" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInDepositOtherAssets"/>
    <link:calculationArc order="11" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets_f5f6f471-4080-4386-8d55-44b4d93e2866" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_d01b87ba-90c3-46f0-bb4e-960bb368218d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:calculationArc order="12" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_d01b87ba-90c3-46f0-bb4e-960bb368218d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_68a9ab76-d41f-47d5-b235-be3e7d4f949a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:calculationArc order="13" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_68a9ab76-d41f-47d5-b235-be3e7d4f949a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_f2b1f0dd-c9b5-43fb-abbb-6eeb8f11bab6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:calculationArc order="14" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_f2b1f0dd-c9b5-43fb-abbb-6eeb8f11bab6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_39ebf340-ed81-480b-9b4c-bead9ad8b504" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:calculationArc order="15" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_8f1a6715-1d6a-4a04-9202-ecf2ad5fb9a8" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_39ebf340-ed81-480b-9b4c-bead9ad8b504" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_f5162c0d-c901-4513-9f06-ffdeecc20d62" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_24765db6-8547-46d3-b4cc-e488023355bf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_f5162c0d-c901-4513-9f06-ffdeecc20d62" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_24765db6-8547-46d3-b4cc-e488023355bf" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_0bbd988b-bb2e-46b0-8ac4-9e2ed9581e40" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_f5162c0d-c901-4513-9f06-ffdeecc20d62" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_0bbd988b-bb2e-46b0-8ac4-9e2ed9581e40" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8771effc-4634-4b93-bf4e-29a77b981bb0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_f5162c0d-c901-4513-9f06-ffdeecc20d62" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8771effc-4634-4b93-bf4e-29a77b981bb0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4018487b-f3a0-4644-b08e-b46bdde2122d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_5e280ffe-f981-4b8b-892a-18f69a9928b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4018487b-f3a0-4644-b08e-b46bdde2122d" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_5e280ffe-f981-4b8b-892a-18f69a9928b0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_9fdafffc-1a18-4f04-97a3-957cdb8619fa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_4018487b-f3a0-4644-b08e-b46bdde2122d" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_9fdafffc-1a18-4f04-97a3-957cdb8619fa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_85d1631e-39f1-46ee-8ab0-71c83d0e2f7a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants_4d8924a0-a98e-4a6e-ab61-68a44820198b" xlink:href="efoi-20210331.xsd#efoi_ProceedsFromIssuanceOfCommonStockAndWarrants"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_85d1631e-39f1-46ee-8ab0-71c83d0e2f7a" xlink:to="loc_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants_4d8924a0-a98e-4a6e-ab61-68a44820198b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_bcb6fa09-ec8a-447d-9964-c29fe799a680" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_85d1631e-39f1-46ee-8ab0-71c83d0e2f7a" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_bcb6fa09-ec8a-447d-9964-c29fe799a680" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_e3d4be8f-3f0c-4540-a3ba-a8104733de16" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_85d1631e-39f1-46ee-8ab0-71c83d0e2f7a" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_e3d4be8f-3f0c-4540-a3ba-a8104733de16" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_13b1133f-777c-4aec-981c-010cd5bbc65c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_85d1631e-39f1-46ee-8ab0-71c83d0e2f7a" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_13b1133f-777c-4aec-981c-010cd5bbc65c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_e50c78ee-4e2f-4e6c-b501-b753a3d836aa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_85d1631e-39f1-46ee-8ab0-71c83d0e2f7a" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_e50c78ee-4e2f-4e6c-b501-b753a3d836aa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable_b381305d-0b92-4805-924a-10ce5cb39697" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_85d1631e-39f1-46ee-8ab0-71c83d0e2f7a" xlink:to="loc_us-gaap_RepaymentsOfNotesPayable_b381305d-0b92-4805-924a-10ce5cb39697" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_253e3468-b684-400d-ad04-0de398404635" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_85d1631e-39f1-46ee-8ab0-71c83d0e2f7a" xlink:to="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_253e3468-b684-400d-ad04-0de398404635" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/NatureofOperations" xlink:type="simple" xlink:href="efoi-20210331.xsd#NatureofOperations"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/NatureofOperations" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/NatureofOperationsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#NatureofOperationsDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/NatureofOperationsDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPolicies"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Restructuring" xlink:type="simple" xlink:href="efoi-20210331.xsd#Restructuring"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/Restructuring" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RestructuringTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#RestructuringTables"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/RestructuringTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RestructuringNarrativeDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#RestructuringNarrativeDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/RestructuringNarrativeDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#RestructuringReconciliationofRestructuringLiabilityDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Inventories" xlink:type="simple" xlink:href="efoi-20210331.xsd#Inventories"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/Inventories" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/InventoriesTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#InventoriesTables"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/InventoriesTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#InventoriesInventoriesNetDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_e9a97a79-6fd3-469e-8af8-662feb5b3ff5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_9fb6c68f-371b-48d8-ae13-def2368e1ed5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_e9a97a79-6fd3-469e-8af8-662feb5b3ff5" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_9fb6c68f-371b-48d8-ae13-def2368e1ed5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_9d8db0f3-0aa1-4ec4-a206-c7eabe4aa57a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_e9a97a79-6fd3-469e-8af8-662feb5b3ff5" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_9d8db0f3-0aa1-4ec4-a206-c7eabe4aa57a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesRawMaterials_4d12a11b-e119-48fc-8331-e3807a2523e1" xlink:href="efoi-20210331.xsd#efoi_InventoryValuationReservesRawMaterials"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_e9a97a79-6fd3-469e-8af8-662feb5b3ff5" xlink:to="loc_efoi_InventoryValuationReservesRawMaterials_4d12a11b-e119-48fc-8331-e3807a2523e1" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#InventoriesReserveRollforwardDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/PropertyandEquipment" xlink:type="simple" xlink:href="efoi-20210331.xsd#PropertyandEquipment"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/PropertyandEquipment" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/PropertyandEquipmentTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#PropertyandEquipmentTables"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/PropertyandEquipmentTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#PropertyandEquipmentScheduleofPropertyandEquipmentDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_f0c107b7-a635-40fc-a71f-4d8c4e3746ea" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_bbec3fad-7abd-4a7a-9a52-8787e1c6bdb8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_f0c107b7-a635-40fc-a71f-4d8c4e3746ea" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_bbec3fad-7abd-4a7a-9a52-8787e1c6bdb8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_5139d228-f4e2-4293-959c-c90d23e4bf00" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_f0c107b7-a635-40fc-a71f-4d8c4e3746ea" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_5139d228-f4e2-4293-959c-c90d23e4bf00" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Leases" xlink:type="simple" xlink:href="efoi-20210331.xsd#Leases"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/Leases" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesTables"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/LeasesTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesNarrativeDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesNarrativeDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/LeasesNarrativeDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesComponentsofLeaseCostDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome_c89d060d-e1e4-4e97-8286-cface181dba1" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseCostNetOfSubleaseIncome"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubleaseIncome_f65058e3-1bef-43e1-bdbc-36d9cdd1c9c4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubleaseIncome"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome_c89d060d-e1e4-4e97-8286-cface181dba1" xlink:to="loc_us-gaap_SubleaseIncome_f65058e3-1bef-43e1-bdbc-36d9cdd1c9c4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_6ac52831-ee08-4648-98ae-a17e5a11f9e2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseCost"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome_c89d060d-e1e4-4e97-8286-cface181dba1" xlink:to="loc_us-gaap_OperatingLeaseCost_6ac52831-ee08-4648-98ae-a17e5a11f9e2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_5e2fa74d-2a53-49a6-bd3a-693b2156f645" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseSubleaseIncome_ce95ef82-2828-4062-9801-b6249109d313" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeaseSubleaseIncome"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_5e2fa74d-2a53-49a6-bd3a-693b2156f645" xlink:to="loc_efoi_RestructuredLeaseSubleaseIncome_ce95ef82-2828-4062-9801-b6249109d313" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseOperatingLeaseCost_cabd9562-7796-4200-a9d4-3d1ee3390bfe" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeaseOperatingLeaseCost"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_5e2fa74d-2a53-49a6-bd3a-693b2156f645" xlink:to="loc_efoi_RestructuredLeaseOperatingLeaseCost_cabd9562-7796-4200-a9d4-3d1ee3390bfe" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_9ccd921d-03b0-4bc4-b3c8-9929b7694dfa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCost"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome_7b105a28-a832-4d7a-acff-fce99ea7d4d5" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseCostNetOfSubleaseIncome"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_9ccd921d-03b0-4bc4-b3c8-9929b7694dfa" xlink:to="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome_7b105a28-a832-4d7a-acff-fce99ea7d4d5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_5098f17e-ff69-49dd-b264-31bcda4afaf9" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_9ccd921d-03b0-4bc4-b3c8-9929b7694dfa" xlink:to="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_5098f17e-ff69-49dd-b264-31bcda4afaf9" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesScheduleofSupplementalBalanceSheetInformationDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases_f21cc852-0544-4697-91b3-14271345f852" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseLiabilityIncludingRestructuredLeases"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_7dc76c77-eba8-457d-91bb-b6f0732e5e52" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases_f21cc852-0544-4697-91b3-14271345f852" xlink:to="loc_us-gaap_OperatingLeaseLiability_7dc76c77-eba8-457d-91bb-b6f0732e5e52" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseLiability_743bc64b-5ad1-4dcf-bfa7-03e34f5d86ef" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseLiability"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases_f21cc852-0544-4697-91b3-14271345f852" xlink:to="loc_efoi_RestructuredOperatingLeaseLiability_743bc64b-5ad1-4dcf-bfa7-03e34f5d86ef" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAsset_ed25d784-61e7-433b-84d7-d45e3cde58f2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAsset"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetGross_d30df747-94ab-4e41-bf73-c6da51263566" xlink:href="efoi-20210331.xsd#efoi_FinanceLeaseRightOfUseAssetGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseRightOfUseAsset_ed25d784-61e7-433b-84d7-d45e3cde58f2" xlink:to="loc_efoi_FinanceLeaseRightOfUseAssetGross_d30df747-94ab-4e41-bf73-c6da51263566" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation_457c408f-4ac2-4f1e-b2e9-073dfa15cbb0" xlink:href="efoi-20210331.xsd#efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseRightOfUseAsset_ed25d784-61e7-433b-84d7-d45e3cde58f2" xlink:to="loc_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation_457c408f-4ac2-4f1e-b2e9-073dfa15cbb0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases_4112a22b-3ddd-4617-9d80-d1b27e28b0c6" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_2da2514a-909a-4c5b-84d4-f15eb0725d38" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases_4112a22b-3ddd-4617-9d80-d1b27e28b0c6" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_2da2514a-909a-4c5b-84d4-f15eb0725d38" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseRightOfUseAsset_da291ba3-cb44-47b3-a9fd-e6e2fa6fb69f" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases_4112a22b-3ddd-4617-9d80-d1b27e28b0c6" xlink:to="loc_efoi_RestructuredOperatingLeaseRightOfUseAsset_da291ba3-cb44-47b3-a9fd-e6e2fa6fb69f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_480fd761-1012-464a-af60-b52da21bab71" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability_4054a879-b8aa-4b0f-b335-230e74795e2c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_480fd761-1012-464a-af60-b52da21bab71" xlink:to="loc_us-gaap_FinanceLeaseLiability_4054a879-b8aa-4b0f-b335-230e74795e2c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_07f88003-c311-4f2b-935e-8db29e7d2054" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_480fd761-1012-464a-af60-b52da21bab71" xlink:to="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_07f88003-c311-4f2b-935e-8db29e7d2054" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_d8d80136-531a-4aff-b43f-c35072d74e63" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_32608964-1a69-4633-a383-973d8e15e0ce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_d8d80136-531a-4aff-b43f-c35072d74e63" xlink:to="loc_us-gaap_OperatingLeaseLiability_32608964-1a69-4633-a383-973d8e15e0ce" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_9ed0031a-9a51-4a09-ac5f-7666cb3b83af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_d8d80136-531a-4aff-b43f-c35072d74e63" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_9ed0031a-9a51-4a09-ac5f-7666cb3b83af" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_a8726150-95c3-452d-90f5-0e7c82c96836" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount_9d3b64d4-848e-442c-82cb-f623fe6586d0" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_a8726150-95c3-452d-90f5-0e7c82c96836" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount_9d3b64d4-848e-442c-82cb-f623fe6586d0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseLiability_dfaccee5-4fe8-4c9e-b2c5-2d654539f869" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseLiability"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_a8726150-95c3-452d-90f5-0e7c82c96836" xlink:to="loc_efoi_RestructuredOperatingLeaseLiability_dfaccee5-4fe8-4c9e-b2c5-2d654539f869" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_4e39106a-bac1-444d-8dd9-c19a237542c3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceived"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount_10773846-c1fd-4f84-8324-eb12a95bf387" xlink:href="efoi-20210331.xsd#efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_4e39106a-bac1-444d-8dd9-c19a237542c3" xlink:to="loc_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount_10773846-c1fd-4f84-8324-eb12a95bf387" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseReceivable_4e32e410-3f74-4b06-bbf3-3b3811246664" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseReceivable"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_4e39106a-bac1-444d-8dd9-c19a237542c3" xlink:to="loc_efoi_OperatingLeaseReceivable_4e32e410-3f74-4b06-bbf3-3b3811246664" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_6937581b-16f8-4962-b997-999997bbb360" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree_86d334c3-81be-456d-9e78-091aef1aa272" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_6937581b-16f8-4962-b997-999997bbb360" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree_86d334c3-81be-456d-9e78-091aef1aa272" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour_a2e83df1-248e-4d3b-8c6d-f5203f4d17c1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_6937581b-16f8-4962-b997-999997bbb360" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour_a2e83df1-248e-4d3b-8c6d-f5203f4d17c1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive_ea3dd3ac-772d-444f-8b8a-035905ffd05c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_6937581b-16f8-4962-b997-999997bbb360" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive_ea3dd3ac-772d-444f-8b8a-035905ffd05c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths_655967c9-0432-4bcc-bbd3-82143d20b052" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_6937581b-16f8-4962-b997-999997bbb360" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths_655967c9-0432-4bcc-bbd3-82143d20b052" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo_31e8b23a-4da5-4a52-8c9a-01c23b7659fe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_6937581b-16f8-4962-b997-999997bbb360" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo_31e8b23a-4da5-4a52-8c9a-01c23b7659fe" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_19a5ca4c-a406-4d53-8ace-2f0eff5ab197" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_00ea6550-cb68-4a68-a271-a8118901274a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_19a5ca4c-a406-4d53-8ace-2f0eff5ab197" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_00ea6550-cb68-4a68-a271-a8118901274a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_9a766736-d94e-48da-b93c-0a21765187f3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_19a5ca4c-a406-4d53-8ace-2f0eff5ab197" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_9a766736-d94e-48da-b93c-0a21765187f3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_5144a76a-3c95-457c-872f-9c68f6f3cdf7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_19a5ca4c-a406-4d53-8ace-2f0eff5ab197" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_5144a76a-3c95-457c-872f-9c68f6f3cdf7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_e5938c13-b103-463f-8c10-a10f25414514" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_19a5ca4c-a406-4d53-8ace-2f0eff5ab197" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_e5938c13-b103-463f-8c10-a10f25414514" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_d2de2eb2-a0d8-462a-9cdf-8f294c3c3772" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_19a5ca4c-a406-4d53-8ace-2f0eff5ab197" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_d2de2eb2-a0d8-462a-9cdf-8f294c3c3772" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_db30d2cc-0aeb-4528-ada1-fd1e30db4a83" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_8fe96f75-120f-4a1b-ae10-84d4391522aa" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_db30d2cc-0aeb-4528-ada1-fd1e30db4a83" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_8fe96f75-120f-4a1b-ae10-84d4391522aa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_7f398ba0-a036-49d5-ad63-db02a389a328" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_db30d2cc-0aeb-4528-ada1-fd1e30db4a83" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_7f398ba0-a036-49d5-ad63-db02a389a328" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_fa0a4e64-c50f-4639-9e39-0a4dc162fb16" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_db30d2cc-0aeb-4528-ada1-fd1e30db4a83" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_fa0a4e64-c50f-4639-9e39-0a4dc162fb16" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_fbac0292-7341-4ae5-9d84-69e78f3ea769" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_db30d2cc-0aeb-4528-ada1-fd1e30db4a83" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_fbac0292-7341-4ae5-9d84-69e78f3ea769" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_8abeacd3-7e55-4041-afdc-fa8c32ccadf0" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_db30d2cc-0aeb-4528-ada1-fd1e30db4a83" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_8abeacd3-7e55-4041-afdc-fa8c32ccadf0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_6c8c3e1f-cd7e-4af7-a4cf-78c46ebe3adc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceived"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths_ccea273c-43fb-426f-808d-004d0c327c6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_6c8c3e1f-cd7e-4af7-a4cf-78c46ebe3adc" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths_ccea273c-43fb-426f-808d-004d0c327c6e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo_38a7cd05-0a07-4e15-ace5-ff8b2bfc04c5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_6c8c3e1f-cd7e-4af7-a4cf-78c46ebe3adc" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo_38a7cd05-0a07-4e15-ace5-ff8b2bfc04c5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree_2943a5a8-93e4-4689-a69c-6f10b16562a2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_6c8c3e1f-cd7e-4af7-a4cf-78c46ebe3adc" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree_2943a5a8-93e4-4689-a69c-6f10b16562a2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour_89717bcb-ce4f-4b7a-9f91-9861203e3fa4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_6c8c3e1f-cd7e-4af7-a4cf-78c46ebe3adc" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour_89717bcb-ce4f-4b7a-9f91-9861203e3fa4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive_e2daab6e-b8e4-46fb-985c-d69af032077e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_6c8c3e1f-cd7e-4af7-a4cf-78c46ebe3adc" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive_e2daab6e-b8e4-46fb-985c-d69af032077e" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesScheduleofSupplementalCashFlowInformationDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Debt" xlink:type="simple" xlink:href="efoi-20210331.xsd#Debt"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/Debt" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtCreditFacilitiesDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtConvertibleNotesDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtIliadNoteDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtIliadNoteDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/DebtIliadNoteDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtStreetervilleNoteDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtPPPLoanDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtPPPLoanDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/DebtPPPLoanDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/IncomeTaxes" xlink:type="simple" xlink:href="efoi-20210331.xsd#IncomeTaxes"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/IncomeTaxes" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#IncomeTaxesNarrativeDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquity" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquity"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquity" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityTables"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityTables" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockSplitDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityStockSplitDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityStockSplitDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityPreferredStockDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityIssuanceofCommonStockandWarrantsDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityWarrantsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityWarrantsDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityWarrantsDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityScheduleofWarrantsOutstandingDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityStockBasedCompensationDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityEstimatesUtilizedDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityStockOptionsandaSummaryofActivityDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityRestrictedStockUnitsDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CommitmentsandContingencies" xlink:type="simple" xlink:href="efoi-20210331.xsd#CommitmentsandContingencies"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CommitmentsandContingencies" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#CommitmentsandContingenciesDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/SubsequentEvents" xlink:type="simple" xlink:href="efoi-20210331.xsd#SubsequentEvents"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/SubsequentEvents" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/SubsequentEventsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#SubsequentEventsDetails"/>
  <link:calculationLink xlink:role="http://www.energyfocusinc.com/role/SubsequentEventsDetails" xlink:type="extended"/>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>7
<FILENAME>efoi-20210331_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:e2a4800e-2bee-4a0f-9ce7-c0f26b88321d,g:b231b6ec-e457-4087-8af0-4631d4401d22-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CoverPage" xlink:type="simple" xlink:href="efoi-20210331.xsd#CoverPage"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CoverPage" xlink:type="extended" id="ib0390968f14141c3bf6be035ce961ca3_CoverPage"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedBalanceSheets"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets" xlink:type="extended" id="id916bdf6f4404cb79672f5417244b71d_CondensedConsolidatedBalanceSheets"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedBalanceSheetsParentheticals"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals" xlink:type="extended" id="i114be95844274be4b86e1166c404654b_CondensedConsolidatedBalanceSheetsParentheticals">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_43fca0c2-8b00-4b83-b4da-97521a139bba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_43fca0c2-8b00-4b83-b4da-97521a139bba" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_3e6a5389-0bd2-4b9c-9d71-c7cc3ab43783" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_3e6a5389-0bd2-4b9c-9d71-c7cc3ab43783" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_966433dd-d332-4077-a5a3-05813bf5b5b5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_966433dd-d332-4077-a5a3-05813bf5b5b5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued_e3f4d94b-5a8b-4f8b-87ff-4c3d2294a7cf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_PreferredStockSharesIssued_e3f4d94b-5a8b-4f8b-87ff-4c3d2294a7cf" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_19054280-c87e-49da-a779-845c11d20f4d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_PreferredStockSharesOutstanding_19054280-c87e-49da-a779-845c11d20f4d" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_288d3471-3cf0-410c-81fb-47c6238b7a3f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_288d3471-3cf0-410c-81fb-47c6238b7a3f" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_af55d5cf-5ec7-49e7-a4f5-b5155b1d8145" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_af55d5cf-5ec7-49e7-a4f5-b5155b1d8145" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_d418b1cc-3cb7-4e0f-b1db-ae12ce295800" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_CommonStockSharesIssued_d418b1cc-3cb7-4e0f-b1db-ae12ce295800" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_81da9a82-8675-4ec6-a406-f086d88054b3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_81da9a82-8675-4ec6-a406-f086d88054b3" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_d9a00cc1-6c05-49bb-8d7e-06f89c89ceb4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_StatementTable_d9a00cc1-6c05-49bb-8d7e-06f89c89ceb4" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_2587c698-52ae-43a2-8cb8-41438bec9480" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_d9a00cc1-6c05-49bb-8d7e-06f89c89ceb4" xlink:to="loc_us-gaap_StatementClassOfStockAxis_2587c698-52ae-43a2-8cb8-41438bec9480" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_2587c698-52ae-43a2-8cb8-41438bec9480_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_2587c698-52ae-43a2-8cb8-41438bec9480" xlink:to="loc_us-gaap_ClassOfStockDomain_2587c698-52ae-43a2-8cb8-41438bec9480_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_ebeb2597-df6b-4058-bc56-5a8b05ce0e56" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_2587c698-52ae-43a2-8cb8-41438bec9480" xlink:to="loc_us-gaap_ClassOfStockDomain_ebeb2597-df6b-4058-bc56-5a8b05ce0e56" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_a95aed72-72da-4195-893d-624d8911d82e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockDomain_ebeb2597-df6b-4058-bc56-5a8b05ce0e56" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_a95aed72-72da-4195-893d-624d8911d82e" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofOperationsUnaudited"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" xlink:type="extended" id="i6a4994579b0648c9836280a03e5000e1_CondensedConsolidatedStatementsofOperationsUnaudited"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofOperationsUnauditedParenthetical"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical" xlink:type="extended" id="i3296883cb5cf4930b1fac0503e799efa_CondensedConsolidatedStatementsofOperationsUnauditedParenthetical"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofComprehensiveLossUnaudited"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited" xlink:type="extended" id="ibb2a7d940f8245fba29c563654f8d1f6_CondensedConsolidatedStatementsofComprehensiveLossUnaudited"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited" xlink:type="extended" id="ie1dc219b16bd4afb862f3c3a7b931a41_CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_d28bf1a3-9f50-4fb6-a886-2ba62ee246bf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_d28bf1a3-9f50-4fb6-a886-2ba62ee246bf" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_5ba0ac7c-3c9e-44c2-9106-a1c9a0b9f532" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_SharesOutstanding_5ba0ac7c-3c9e-44c2-9106-a1c9a0b9f532" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_639351f5-86c7-4d50-bf99-58da0345e869" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockholdersEquity_639351f5-86c7-4d50-bf99-58da0345e869" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_b5e9336c-0b87-4b23-aa1e-ecbf19022c2d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_b5e9336c-0b87-4b23-aa1e-ecbf19022c2d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_9224e3e4-b688-4e38-8bc9-8a9b23dfd830" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_9224e3e4-b688-4e38-8bc9-8a9b23dfd830" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_be5bd73f-4928-45cd-a2f6-898ca5af5c0c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_be5bd73f-4928-45cd-a2f6-898ca5af5c0c" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues_0d31b8fd-13a4-48cf-b4f5-a2ef0f21543f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues_0d31b8fd-13a4-48cf-b4f5-a2ef0f21543f" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_9ee8afdd-74dd-4353-b37d-5a392fbd9ada" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_9ee8afdd-74dd-4353-b37d-5a392fbd9ada" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_169c1d7a-d1b6-46ab-917a-5de6f97c3770" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_169c1d7a-d1b6-46ab-917a-5de6f97c3770" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease_9002917c-4e13-4153-ba7b-d41b4134d589" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease_9002917c-4e13-4153-ba7b-d41b4134d589" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants_7ea1cf2c-78b5-469b-af14-74fd976063b6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants_7ea1cf2c-78b5-469b-af14-74fd976063b6" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_97965deb-bedd-4abd-96f0-3461116a9dbe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_97965deb-bedd-4abd-96f0-3461116a9dbe" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued_01d29134-13cc-4ce9-b860-7321749f4ff4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued_01d29134-13cc-4ce9-b860-7321749f4ff4" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_db3dc56f-cf07-45af-b937-ace54d720421" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_db3dc56f-cf07-45af-b937-ace54d720421" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_f25542d0-ee54-4ba0-aab6-6b2ba41fb381" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_f25542d0-ee54-4ba0-aab6-6b2ba41fb381" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_07b5e978-5256-401a-a1ae-6f3b2bc5fd8a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_07b5e978-5256-401a-a1ae-6f3b2bc5fd8a" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_e520d6fa-407d-4fdb-abf4-4a929ea5e612" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_e520d6fa-407d-4fdb-abf4-4a929ea5e612" xlink:type="arc" order="16"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_23b14b6f-8dc7-4529-aeb6-885398d54d47" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_239f9798-1ea3-4ad9-8913-2d93c2ba93f4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_dcdee85d-4e9a-4ac0-bf16-3a5b449f29d9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_d28bf1a3-9f50-4fb6-a886-2ba62ee246bf" xlink:to="loc_us-gaap_StatementTable_dcdee85d-4e9a-4ac0-bf16-3a5b449f29d9" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_ca47a408-c5e9-411a-a19d-86c949053e2b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_dcdee85d-4e9a-4ac0-bf16-3a5b449f29d9" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_ca47a408-c5e9-411a-a19d-86c949053e2b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_ca47a408-c5e9-411a-a19d-86c949053e2b_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_ca47a408-c5e9-411a-a19d-86c949053e2b" xlink:to="loc_us-gaap_EquityComponentDomain_ca47a408-c5e9-411a-a19d-86c949053e2b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_ca47a408-c5e9-411a-a19d-86c949053e2b" xlink:to="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_48c39afb-50ae-4515-a08b-2223cace7c76" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:to="loc_us-gaap_PreferredStockMember_48c39afb-50ae-4515-a08b-2223cace7c76" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_22bdf26e-6eba-4a8a-a42b-57eda0696c47" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:to="loc_us-gaap_CommonStockMember_22bdf26e-6eba-4a8a-a42b-57eda0696c47" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_ad562f2f-0b60-4c39-823f-04aa0bd8c241" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_ad562f2f-0b60-4c39-823f-04aa0bd8c241" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_6881fe27-b5f6-4f9a-b314-a403817045a7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_6881fe27-b5f6-4f9a-b314-a403817045a7" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_6676e501-e80e-4a9d-b06d-314f568ef322" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:to="loc_us-gaap_RetainedEarningsMember_6676e501-e80e-4a9d-b06d-314f568ef322" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_ba93c188-fcd8-4ac0-ab9b-40b9c31e67d4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_dcdee85d-4e9a-4ac0-bf16-3a5b449f29d9" xlink:to="loc_us-gaap_AwardTypeAxis_ba93c188-fcd8-4ac0-ab9b-40b9c31e67d4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ba93c188-fcd8-4ac0-ab9b-40b9c31e67d4_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_ba93c188-fcd8-4ac0-ab9b-40b9c31e67d4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_ba93c188-fcd8-4ac0-ab9b-40b9c31e67d4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_66b9cd7f-c1db-4290-b495-b9b03939585a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_ba93c188-fcd8-4ac0-ab9b-40b9c31e67d4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_66b9cd7f-c1db-4290-b495-b9b03939585a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_473655d1-6331-4cba-bab0-1c654673f76c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_66b9cd7f-c1db-4290-b495-b9b03939585a" xlink:to="loc_us-gaap_PreferredStockMember_473655d1-6331-4cba-bab0-1c654673f76c" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical" xlink:type="extended" id="i2a8cccf333084b87b19ad208fa9d21cc_CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofCashFlowsUnaudited"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" xlink:type="extended" id="i0864bd34583342d38b99a933b3dbfe0d_CondensedConsolidatedStatementsofCashFlowsUnaudited">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c0b19ffa-195d-453a-a90c-866c917a8e93" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c0b19ffa-195d-453a-a90c-866c917a8e93" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_628546eb-cf1d-4c83-a9aa-dedc9616cd3f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c0b19ffa-195d-453a-a90c-866c917a8e93" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_628546eb-cf1d-4c83-a9aa-dedc9616cd3f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c0b19ffa-195d-453a-a90c-866c917a8e93" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_abc7a818-adb7-4db0-ba3f-019959381349" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_abc7a818-adb7-4db0-ba3f-019959381349" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_dcf6d495-2aa1-429b-98f3-992ddc960738" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Depreciation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_Depreciation_dcf6d495-2aa1-429b-98f3-992ddc960738" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_3336e22b-78f6-43ed-a81f-77713104a0b2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_ShareBasedCompensation_3336e22b-78f6-43ed-a81f-77713104a0b2" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAdjustmentOfWarrants_fc488f17-ba07-457f-b5e5-071b6216e949" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAdjustmentOfWarrants"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_FairValueAdjustmentOfWarrants_fc488f17-ba07-457f-b5e5-071b6216e949" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_cf07a2ab-d017-47a8-a6b2-a663ef6257a2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_cf07a2ab-d017-47a8-a6b2-a663ef6257a2" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown_6fd0a0d5-c042-44a7-97f1-896beb03e909" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryWriteDown"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_InventoryWriteDown_6fd0a0d5-c042-44a7-97f1-896beb03e909" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_IncreaseDecreaseInProvisionForWarranties_c9bb5be2-42b4-4e7e-be52-d0611d12e4f4" xlink:href="efoi-20210331.xsd#efoi_IncreaseDecreaseInProvisionForWarranties"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_efoi_IncreaseDecreaseInProvisionForWarranties_c9bb5be2-42b4-4e7e-be52-d0611d12e4f4" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet_c6cda052-e19b-4abc-ac45-2f0a73ac7ca6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AmortizationOfDeferredLoanOriginationFeesNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet_c6cda052-e19b-4abc-ac45-2f0a73ac7ca6" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_4791a07e-270b-47d3-ac76-8125a1b9a670" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_4791a07e-270b-47d3-ac76-8125a1b9a670" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_23ffa6c4-3c82-4036-968c-19a1fe99988a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_23ffa6c4-3c82-4036-968c-19a1fe99988a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets_06ebbf2d-0ce3-4eeb-a9b7-0bbb3fdc2a1c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInDepositOtherAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets_06ebbf2d-0ce3-4eeb-a9b7-0bbb3fdc2a1c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_4d8031b4-5e4a-491f-abf4-3bedb3132254" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_4d8031b4-5e4a-491f-abf4-3bedb3132254" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_2f8c47a2-7e01-4865-9925-91d9b9698e75" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_2f8c47a2-7e01-4865-9925-91d9b9698e75" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_d017b5c2-89ab-4348-a59e-2181b6974846" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_d017b5c2-89ab-4348-a59e-2181b6974846" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_ef5cae08-5594-4469-bb58-e4250bb9049b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_ef5cae08-5594-4469-bb58-e4250bb9049b" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_7af93694-917a-4711-978c-3bd214b3d375" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_7af93694-917a-4711-978c-3bd214b3d375" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7b1023e4-3142-4606-8acd-c46e02e5755d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c0b19ffa-195d-453a-a90c-866c917a8e93" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7b1023e4-3142-4606-8acd-c46e02e5755d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_ffb7b934-a2ad-4506-9039-f7fa85f97711" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_ffb7b934-a2ad-4506-9039-f7fa85f97711" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_e17eebbc-cfb4-44b0-baf6-4217caece2d2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_ffb7b934-a2ad-4506-9039-f7fa85f97711" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_e17eebbc-cfb4-44b0-baf6-4217caece2d2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_f0adfa30-08a9-4254-82fe-8c67ee4d7d65" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_ffb7b934-a2ad-4506-9039-f7fa85f97711" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_f0adfa30-08a9-4254-82fe-8c67ee4d7d65" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants_d50a9a2b-bf8f-4ec7-b3b7-72bdb68c8167" xlink:href="efoi-20210331.xsd#efoi_ProceedsFromIssuanceOfCommonStockAndWarrants"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants_d50a9a2b-bf8f-4ec7-b3b7-72bdb68c8167" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_4560d901-31fd-4c39-a38e-a0174ea6ff77" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_4560d901-31fd-4c39-a38e-a0174ea6ff77" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_6f11abb2-6c02-450c-b074-b7ee8ca45f9d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_6f11abb2-6c02-450c-b074-b7ee8ca45f9d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_2fecbdbc-3fbd-4973-b804-df111c7ecd36" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_2fecbdbc-3fbd-4973-b804-df111c7ecd36" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_6ace95a6-4896-49d2-af39-f8c8d1b0ca91" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_6ace95a6-4896-49d2-af39-f8c8d1b0ca91" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable_f5edc724-bef3-4db5-bc60-d2605dbbcb4a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_RepaymentsOfNotesPayable_f5edc724-bef3-4db5-bc60-d2605dbbcb4a" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_deebb0ee-4ce7-4b47-87ef-8807b9bc43e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_deebb0ee-4ce7-4b47-87ef-8807b9bc43e6" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_eb4f30ec-fea9-436d-a9ed-c52fe0fc80b9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_eb4f30ec-fea9-436d-a9ed-c52fe0fc80b9" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_04d38c7e-c0cf-494c-b99a-50ad8876ac81" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_04d38c7e-c0cf-494c-b99a-50ad8876ac81" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_d4a95bf8-654b-47f8-9608-56cf112e8dca" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_d4a95bf8-654b-47f8-9608-56cf112e8dca" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_ff6ad05a-a206-40af-8cfd-69fab48f56b2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_f2ce7767-7943-42d8-9fc8-113622ee06f5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_CashAndCashEquivalentsAbstract_f2ce7767-7943-42d8-9fc8-113622ee06f5" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_47226f38-ee67-429f-a746-88e8d5bc6ba4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_f2ce7767-7943-42d8-9fc8-113622ee06f5" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_47226f38-ee67-429f-a746-88e8d5bc6ba4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCash_195a41e8-c0f2-409e-8fcb-184138d40116" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCash"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_f2ce7767-7943-42d8-9fc8-113622ee06f5" xlink:to="loc_us-gaap_RestrictedCash_195a41e8-c0f2-409e-8fcb-184138d40116" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_6119710d-1e50-4c07-b693-fff13296792f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_3b02fe08-3d9a-4c36-8f4c-7ad31a1d6657" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_StatementTable_3b02fe08-3d9a-4c36-8f4c-7ad31a1d6657" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_f2b48826-a064-45c0-9051-d91cfaf054de" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_3b02fe08-3d9a-4c36-8f4c-7ad31a1d6657" xlink:to="loc_us-gaap_DebtInstrumentAxis_f2b48826-a064-45c0-9051-d91cfaf054de" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_f2b48826-a064-45c0-9051-d91cfaf054de_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_f2b48826-a064-45c0-9051-d91cfaf054de" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_f2b48826-a064-45c0-9051-d91cfaf054de_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_5c87aa4d-5572-4820-8330-995bd02be5bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_f2b48826-a064-45c0-9051-d91cfaf054de" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_5c87aa4d-5572-4820-8330-995bd02be5bd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_AustinCreditFacilityMember_7bc883e1-7c2b-4276-b01d-6d82127888b5" xlink:href="efoi-20210331.xsd#efoi_AustinCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_5c87aa4d-5572-4820-8330-995bd02be5bd" xlink:to="loc_efoi_AustinCreditFacilityMember_7bc883e1-7c2b-4276-b01d-6d82127888b5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NewCreditFacilitiesMember_e572902f-7527-4613-a671-3f21377b3fda" xlink:href="efoi-20210331.xsd#efoi_NewCreditFacilitiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_5c87aa4d-5572-4820-8330-995bd02be5bd" xlink:to="loc_efoi_NewCreditFacilitiesMember_e572902f-7527-4613-a671-3f21377b3fda" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/NatureofOperations" xlink:type="simple" xlink:href="efoi-20210331.xsd#NatureofOperations"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/NatureofOperations" xlink:type="extended" id="i44163dac75c74e8ba57437b1ec5b78db_NatureofOperations"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/NatureofOperationsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#NatureofOperationsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/NatureofOperationsDetails" xlink:type="extended" id="i36ae5f73391a4043851091ab7e40cbb0_NatureofOperationsDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPolicies"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies" xlink:type="extended" id="i47015da3d7b5498a99543bf95accb318_BasisofPresentationandSummaryofSignificantAccountingPolicies"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" xlink:type="extended" id="i427ed776f0aa43b7a0c0ef33491df9d6_BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables" xlink:type="extended" id="i168b3923f04f49c1af83d33b1935d869_BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails" xlink:type="extended" id="i990eb75d8473480e8668996204345acd_BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_344ae824-258a-4b99-a765-0b4c55980cf5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_2d0d7a60-2bf0-470f-aa4b-a010a2e78c8a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_344ae824-258a-4b99-a765-0b4c55980cf5" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_2d0d7a60-2bf0-470f-aa4b-a010a2e78c8a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_344ae824-258a-4b99-a765-0b4c55980cf5" xlink:to="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_fface903-31f8-40a4-b026-051f0bffbdba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_fface903-31f8-40a4-b026-051f0bffbdba" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_fface903-31f8-40a4-b026-051f0bffbdba_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_fface903-31f8-40a4-b026-051f0bffbdba" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_fface903-31f8-40a4-b026-051f0bffbdba_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_c06a1a51-6f4b-4b73-8e8e-84f57c9e0011" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_fface903-31f8-40a4-b026-051f0bffbdba" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_c06a1a51-6f4b-4b73-8e8e-84f57c9e0011" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_93c34fa3-ed99-4a21-97a4-526667d03a3e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_c06a1a51-6f4b-4b73-8e8e-84f57c9e0011" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_93c34fa3-ed99-4a21-97a4-526667d03a3e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplierConcentrationRiskMember_e02e3e8b-f812-490b-8c16-5fb6b519b2a1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SupplierConcentrationRiskMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_c06a1a51-6f4b-4b73-8e8e-84f57c9e0011" xlink:to="loc_us-gaap_SupplierConcentrationRiskMember_e02e3e8b-f812-490b-8c16-5fb6b519b2a1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember_07a99ba4-0bdc-4450-97d5-a539a306faa8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GeographicConcentrationRiskMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_c06a1a51-6f4b-4b73-8e8e-84f57c9e0011" xlink:to="loc_us-gaap_GeographicConcentrationRiskMember_07a99ba4-0bdc-4450-97d5-a539a306faa8" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis_7014907a-de25-4139-b5f4-8defb8e119d0" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MajorCustomersAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:to="loc_srt_MajorCustomersAxis_7014907a-de25-4139-b5f4-8defb8e119d0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_7014907a-de25-4139-b5f4-8defb8e119d0_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_7014907a-de25-4139-b5f4-8defb8e119d0" xlink:to="loc_srt_NameOfMajorCustomerDomain_7014907a-de25-4139-b5f4-8defb8e119d0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_deb5d3fd-0853-4edb-9176-09e835ee4577" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_7014907a-de25-4139-b5f4-8defb8e119d0" xlink:to="loc_srt_NameOfMajorCustomerDomain_deb5d3fd-0853-4edb-9176-09e835ee4577" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheU.S.NavyMember_a5f32dcb-b08c-46f4-9b1d-fa3078b20440" xlink:href="efoi-20210331.xsd#efoi_DistributorToTheU.S.NavyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_deb5d3fd-0853-4edb-9176-09e835ee4577" xlink:to="loc_efoi_DistributorToTheU.S.NavyMember_a5f32dcb-b08c-46f4-9b1d-fa3078b20440" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RegionalCommercialLightingRetrofitCompanyMember_4d7bca75-6606-438e-b1be-66fabe3ae3bd" xlink:href="efoi-20210331.xsd#efoi_RegionalCommercialLightingRetrofitCompanyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_deb5d3fd-0853-4edb-9176-09e835ee4577" xlink:to="loc_efoi_RegionalCommercialLightingRetrofitCompanyMember_4d7bca75-6606-438e-b1be-66fabe3ae3bd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember_c5a5cf08-3c84-41ae-9f7b-3a3b93878345" xlink:href="efoi-20210331.xsd#efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_deb5d3fd-0853-4edb-9176-09e835ee4577" xlink:to="loc_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember_c5a5cf08-3c84-41ae-9f7b-3a3b93878345" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ShipbuilderForUSNavyMember_82983146-7947-4bc5-adf1-d6e092957976" xlink:href="efoi-20210331.xsd#efoi_ShipbuilderForUSNavyMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_deb5d3fd-0853-4edb-9176-09e835ee4577" xlink:to="loc_efoi_ShipbuilderForUSNavyMember_82983146-7947-4bc5-adf1-d6e092957976" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_2cc5692a-ec55-4640-abb6-852eda9a3969" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:to="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_2cc5692a-ec55-4640-abb6-852eda9a3969" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_2cc5692a-ec55-4640-abb6-852eda9a3969_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_2cc5692a-ec55-4640-abb6-852eda9a3969" xlink:to="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_2cc5692a-ec55-4640-abb6-852eda9a3969_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_97aafba4-8513-4f46-b257-2cf2d13a0efd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_2cc5692a-ec55-4640-abb6-852eda9a3969" xlink:to="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_97aafba4-8513-4f46-b257-2cf2d13a0efd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OffshoreSupplierMember_6680b94a-ab72-4bba-826b-a14ae87ca2d8" xlink:href="efoi-20210331.xsd#efoi_OffshoreSupplierMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_97aafba4-8513-4f46-b257-2cf2d13a0efd" xlink:to="loc_efoi_OffshoreSupplierMember_6680b94a-ab72-4bba-826b-a14ae87ca2d8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DomesticSupplierMember_ddde71d0-3f26-4e17-bb3d-2cee6dfa6073" xlink:href="efoi-20210331.xsd#efoi_DomesticSupplierMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_97aafba4-8513-4f46-b257-2cf2d13a0efd" xlink:to="loc_efoi_DomesticSupplierMember_ddde71d0-3f26-4e17-bb3d-2cee6dfa6073" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_eaba4900-764a-4acc-bade-bd7a6090ed9b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_eaba4900-764a-4acc-bade-bd7a6090ed9b" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_eaba4900-764a-4acc-bade-bd7a6090ed9b_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_eaba4900-764a-4acc-bade-bd7a6090ed9b" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_eaba4900-764a-4acc-bade-bd7a6090ed9b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_48a0ea5a-b8e5-414d-a968-9a0ca3ede66a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_eaba4900-764a-4acc-bade-bd7a6090ed9b" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_48a0ea5a-b8e5-414d-a968-9a0ca3ede66a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueNetMember_05b7f9c3-f3c1-49e2-bc67-95c404eac402" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SalesRevenueNetMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_48a0ea5a-b8e5-414d-a968-9a0ca3ede66a" xlink:to="loc_us-gaap_SalesRevenueNetMember_05b7f9c3-f3c1-49e2-bc67-95c404eac402" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember_0cf84562-05e2-4493-86f2-6a7bcbf7bda3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_48a0ea5a-b8e5-414d-a968-9a0ca3ede66a" xlink:to="loc_us-gaap_AccountsReceivableMember_0cf84562-05e2-4493-86f2-6a7bcbf7bda3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableMember_e88578bf-0881-436b-aac4-ced4a4e154e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_48a0ea5a-b8e5-414d-a968-9a0ca3ede66a" xlink:to="loc_us-gaap_AccountsPayableMember_e88578bf-0881-436b-aac4-ced4a4e154e6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_2d14c4da-8ccb-4c53-ae1e-c99b8e199c50" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_StatementGeographicalAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:to="loc_srt_StatementGeographicalAxis_2d14c4da-8ccb-4c53-ae1e-c99b8e199c50" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_2d14c4da-8ccb-4c53-ae1e-c99b8e199c50_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_2d14c4da-8ccb-4c53-ae1e-c99b8e199c50" xlink:to="loc_srt_SegmentGeographicalDomain_2d14c4da-8ccb-4c53-ae1e-c99b8e199c50_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_ac9b957e-049e-4368-adc4-c649f042cee7" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_2d14c4da-8ccb-4c53-ae1e-c99b8e199c50" xlink:to="loc_srt_SegmentGeographicalDomain_ac9b957e-049e-4368-adc4-c649f042cee7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonUsMember_e3c28e2c-f95d-4761-bbb1-ec6327263e80" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NonUsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_ac9b957e-049e-4368-adc4-c649f042cee7" xlink:to="loc_us-gaap_NonUsMember_e3c28e2c-f95d-4761-bbb1-ec6327263e80" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails" xlink:type="extended" id="i258897225be9468db1ed4447a80b9bf7_BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_4be6dec6-2e5c-454b-963e-8ac6554f3d20" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_51823d7e-7bd0-4a5c-9aa7-3df0d9fa5a8b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Revenues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_4be6dec6-2e5c-454b-963e-8ac6554f3d20" xlink:to="loc_us-gaap_Revenues_51823d7e-7bd0-4a5c-9aa7-3df0d9fa5a8b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c94af38e-5310-4140-9315-70fe553ede8b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_4be6dec6-2e5c-454b-963e-8ac6554f3d20" xlink:to="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c94af38e-5310-4140-9315-70fe553ede8b" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_099c925b-6c11-4270-bad1-96a927f1001f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c94af38e-5310-4140-9315-70fe553ede8b" xlink:to="loc_srt_ProductOrServiceAxis_099c925b-6c11-4270-bad1-96a927f1001f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_099c925b-6c11-4270-bad1-96a927f1001f_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_099c925b-6c11-4270-bad1-96a927f1001f" xlink:to="loc_srt_ProductsAndServicesDomain_099c925b-6c11-4270-bad1-96a927f1001f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_245a62cd-cd91-481e-94db-8aaebb4e85b0" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_099c925b-6c11-4270-bad1-96a927f1001f" xlink:to="loc_srt_ProductsAndServicesDomain_245a62cd-cd91-481e-94db-8aaebb4e85b0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialProductsMember_45a71a5a-6bd9-4276-befe-2913adce77ef" xlink:href="efoi-20210331.xsd#efoi_CommercialProductsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_245a62cd-cd91-481e-94db-8aaebb4e85b0" xlink:to="loc_efoi_CommercialProductsMember_45a71a5a-6bd9-4276-befe-2913adce77ef" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_MMMProductsMember_b10ef0aa-a4ee-4144-9e55-60122880d89f" xlink:href="efoi-20210331.xsd#efoi_MMMProductsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_245a62cd-cd91-481e-94db-8aaebb4e85b0" xlink:to="loc_efoi_MMMProductsMember_b10ef0aa-a4ee-4144-9e55-60122880d89f" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails" xlink:type="extended" id="i0356144b18794c3189f252e5510f4903_BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails" xlink:type="extended" id="i039eabfc09764d0084828b5e4c53d564_BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_1843f4ff-1de9-4294-b2b1-62b64e249ae8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_fe8c8c05-a2e4-4cc0-b797-2977e381265c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_1843f4ff-1de9-4294-b2b1-62b64e249ae8" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_fe8c8c05-a2e4-4cc0-b797-2977e381265c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_429ed8d0-2a27-495e-a3dd-c1d962ed62be" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_1843f4ff-1de9-4294-b2b1-62b64e249ae8" xlink:to="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_429ed8d0-2a27-495e-a3dd-c1d962ed62be" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_b0595752-8b53-4127-a160-1c114665d606" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_429ed8d0-2a27-495e-a3dd-c1d962ed62be" xlink:to="loc_us-gaap_AwardTypeAxis_b0595752-8b53-4127-a160-1c114665d606" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_b0595752-8b53-4127-a160-1c114665d606_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_b0595752-8b53-4127-a160-1c114665d606" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_b0595752-8b53-4127-a160-1c114665d606_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_61829987-1049-41f2-a2a2-0715a6be3f8d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_b0595752-8b53-4127-a160-1c114665d606" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_61829987-1049-41f2-a2a2-0715a6be3f8d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockOptionMember_9e6cf96a-4e59-40da-9ede-29096ffd4f6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockOptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_61829987-1049-41f2-a2a2-0715a6be3f8d" xlink:to="loc_us-gaap_StockOptionMember_9e6cf96a-4e59-40da-9ede-29096ffd4f6e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_b99267f3-7d62-47e6-8e5b-55130f7ad5f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_61829987-1049-41f2-a2a2-0715a6be3f8d" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_b99267f3-7d62-47e6-8e5b-55130f7ad5f7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantMember_aad931ff-95a3-4a12-83d6-acbcae99c9ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WarrantMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_61829987-1049-41f2-a2a2-0715a6be3f8d" xlink:to="loc_us-gaap_WarrantMember_aad931ff-95a3-4a12-83d6-acbcae99c9ec" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_481cdbf6-fb72-4faf-849b-6a4cf6d16269" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_61829987-1049-41f2-a2a2-0715a6be3f8d" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_481cdbf6-fb72-4faf-849b-6a4cf6d16269" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails" xlink:type="extended" id="if5771da8df294b2baaa4dede35dc3d1f_BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyLiabilityLineItems_4d5cd74f-ccee-4539-a06d-73d07a50e593" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyLiabilityLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StandardProductWarrantyNumberofYears_7d6a996a-0e8d-48fd-9859-098e404fe677" xlink:href="efoi-20210331.xsd#efoi_StandardProductWarrantyNumberofYears"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ProductWarrantyLiabilityLineItems_4d5cd74f-ccee-4539-a06d-73d07a50e593" xlink:to="loc_efoi_StandardProductWarrantyNumberofYears_7d6a996a-0e8d-48fd-9859-098e404fe677" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyLiabilityTable_e828fa6f-46fa-4dae-bf25-c7306182198c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyLiabilityTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ProductWarrantyLiabilityLineItems_4d5cd74f-ccee-4539-a06d-73d07a50e593" xlink:to="loc_us-gaap_ProductWarrantyLiabilityTable_e828fa6f-46fa-4dae-bf25-c7306182198c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_c0f53ce6-7b98-41ca-9097-7c449acaa0fc" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ProductWarrantyLiabilityTable_e828fa6f-46fa-4dae-bf25-c7306182198c" xlink:to="loc_srt_RangeAxis_c0f53ce6-7b98-41ca-9097-7c449acaa0fc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_c0f53ce6-7b98-41ca-9097-7c449acaa0fc_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_c0f53ce6-7b98-41ca-9097-7c449acaa0fc" xlink:to="loc_srt_RangeMember_c0f53ce6-7b98-41ca-9097-7c449acaa0fc_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_62fb5818-3042-4217-b16b-21a23c27c110" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_c0f53ce6-7b98-41ca-9097-7c449acaa0fc" xlink:to="loc_srt_RangeMember_62fb5818-3042-4217-b16b-21a23c27c110" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_77aef49a-1102-48bc-891c-90294faf1bc8" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_62fb5818-3042-4217-b16b-21a23c27c110" xlink:to="loc_srt_MinimumMember_77aef49a-1102-48bc-891c-90294faf1bc8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_993827dc-c1b3-48f7-9ecc-9687ca4a6ef4" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_62fb5818-3042-4217-b16b-21a23c27c110" xlink:to="loc_srt_MaximumMember_993827dc-c1b3-48f7-9ecc-9687ca4a6ef4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_990264ef-f344-49c6-8ad9-443028781a51" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ProductWarrantyLiabilityTable_e828fa6f-46fa-4dae-bf25-c7306182198c" xlink:to="loc_srt_ProductOrServiceAxis_990264ef-f344-49c6-8ad9-443028781a51" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_990264ef-f344-49c6-8ad9-443028781a51_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_990264ef-f344-49c6-8ad9-443028781a51" xlink:to="loc_srt_ProductsAndServicesDomain_990264ef-f344-49c6-8ad9-443028781a51_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_123d50e6-fa47-4586-825f-0e3191ac4292" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_990264ef-f344-49c6-8ad9-443028781a51" xlink:to="loc_srt_ProductsAndServicesDomain_123d50e6-fa47-4586-825f-0e3191ac4292" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember_2f53243c-b373-4138-8bce-24e916a171c1" xlink:href="efoi-20210331.xsd#efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_123d50e6-fa47-4586-825f-0e3191ac4292" xlink:to="loc_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember_2f53243c-b373-4138-8bce-24e916a171c1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OtherLEDProductsMember_ad26d3bf-2433-4aeb-afe0-ab86f197a594" xlink:href="efoi-20210331.xsd#efoi_OtherLEDProductsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_123d50e6-fa47-4586-825f-0e3191ac4292" xlink:to="loc_efoi_OtherLEDProductsMember_ad26d3bf-2433-4aeb-afe0-ab86f197a594" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember_f6d96b91-2c49-4696-a21e-48e4dbc37042" xlink:href="efoi-20210331.xsd#efoi_LEDFLTubularLEDLampsExcludingRedCapsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_123d50e6-fa47-4586-825f-0e3191ac4292" xlink:to="loc_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember_f6d96b91-2c49-4696-a21e-48e4dbc37042" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DSeriesLampsMember_fca322d4-c74b-4adb-a92a-601ca2d1e9e3" xlink:href="efoi-20210331.xsd#efoi_DSeriesLampsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_123d50e6-fa47-4586-825f-0e3191ac4292" xlink:to="loc_efoi_DSeriesLampsMember_fca322d4-c74b-4adb-a92a-601ca2d1e9e3" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails" xlink:type="extended" id="i68bc99d229c545d2aaad10e6d42324a7_BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails" xlink:type="extended" id="ib11da44a8e674b33920d891ea2765cff_BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_1276df44-ffd7-4e11-9fb4-438dcb8dd41d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_1276df44-ffd7-4e11-9fb4-438dcb8dd41d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_8f994528-36f3-48a2-a0b6-a767a222857b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_8f994528-36f3-48a2-a0b6-a767a222857b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_54658787-9e65-475f-8aaa-5eadfb8278c8" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_54658787-9e65-475f-8aaa-5eadfb8278c8" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_7ba634ad-6d48-433f-8a87-3a83956942e2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_7ba634ad-6d48-433f-8a87-3a83956942e2" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_6aea3565-7eb3-4795-980b-2036c13a0973" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_6aea3565-7eb3-4795-980b-2036c13a0973" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions_3dd053b0-a037-401d-9385-44eea4786c4a" xlink:href="efoi-20210331.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_PaymentsForPlacementAgentCommissions_3dd053b0-a037-401d-9385-44eea4786c4a" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_99d1833c-0ec1-48b6-a835-08cae1bd3253" xlink:href="efoi-20210331.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_99d1833c-0ec1-48b6-a835-08cae1bd3253" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees_3edb7555-1859-4f38-9dc2-e30ece8190fa" xlink:href="efoi-20210331.xsd#efoi_PaymentsForClearingFees"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_PaymentsForClearingFees_3edb7555-1859-4f38-9dc2-e30ece8190fa" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_eba1083c-745a-46f2-b2cc-8a3a7ff06cae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_eba1083c-745a-46f2-b2cc-8a3a7ff06cae" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_f5633b2c-c6cd-419e-af5e-0fef5bbbf1fd" xlink:href="efoi-20210331.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_f5633b2c-c6cd-419e-af5e-0fef5bbbf1fd" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_20b5bdfd-1fc5-4171-8cd7-b50789db9a28" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentProceedsToBePaidToLenderPercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_20b5bdfd-1fc5-4171-8cd7-b50789db9a28" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_3b23db0b-2050-402d-afce-8cd4b2815c0e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOrSaleOfEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_3b23db0b-2050-402d-afce-8cd4b2815c0e" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable_d67f8e94-7399-426d-bdee-9dc68e590aea" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_RepaymentsOfNotesPayable_d67f8e94-7399-426d-bdee-9dc68e590aea" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfWarrants_9ea50d16-bbdc-44b2-8d72-51b2608a6e41" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfWarrants"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfWarrants_9ea50d16-bbdc-44b2-8d72-51b2608a6e41" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_6e74555f-a0aa-484d-9ea8-ecde25b0a70a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_6e74555f-a0aa-484d-9ea8-ecde25b0a70a" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_f613dda0-8a0e-4b28-bbe3-44c18803edb9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_f613dda0-8a0e-4b28-bbe3-44c18803edb9" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_6ad9a534-6fa6-4e63-a829-c6899abb2c5c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfStockByClassTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_ScheduleOfStockByClassTable_6ad9a534-6fa6-4e63-a829-c6899abb2c5c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_64c62c22-b5fc-4ef0-95ae-42edea7332d4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_6ad9a534-6fa6-4e63-a829-c6899abb2c5c" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_64c62c22-b5fc-4ef0-95ae-42edea7332d4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_64c62c22-b5fc-4ef0-95ae-42edea7332d4_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_64c62c22-b5fc-4ef0-95ae-42edea7332d4" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_64c62c22-b5fc-4ef0-95ae-42edea7332d4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_3dc0439f-8de2-4f8f-90e0-f1d881941b7b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_64c62c22-b5fc-4ef0-95ae-42edea7332d4" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_3dc0439f-8de2-4f8f-90e0-f1d881941b7b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_4abd4a6e-cfed-449f-8a96-c4118f3a1551" xlink:href="efoi-20210331.xsd#efoi_InstitutionalInvestorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_3dc0439f-8de2-4f8f-90e0-f1d881941b7b" xlink:to="loc_efoi_InstitutionalInvestorMember_4abd4a6e-cfed-449f-8a96-c4118f3a1551" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrivatePlacementMember_93346bc6-e8dc-4c80-9115-64434e8ffb77" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrivatePlacementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_3dc0439f-8de2-4f8f-90e0-f1d881941b7b" xlink:to="loc_us-gaap_PrivatePlacementMember_93346bc6-e8dc-4c80-9115-64434e8ffb77" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_094b48da-9c45-400d-ae3f-165840cb56ca" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_6ad9a534-6fa6-4e63-a829-c6899abb2c5c" xlink:to="loc_us-gaap_DebtInstrumentAxis_094b48da-9c45-400d-ae3f-165840cb56ca" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_094b48da-9c45-400d-ae3f-165840cb56ca_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_094b48da-9c45-400d-ae3f-165840cb56ca" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_094b48da-9c45-400d-ae3f-165840cb56ca_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_a1db35f5-c326-4a36-a41a-f60feeb7cf57" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_094b48da-9c45-400d-ae3f-165840cb56ca" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_a1db35f5-c326-4a36-a41a-f60feeb7cf57" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NotePurchaseAgreementMember_a1c23202-e2b2-49dc-b6cd-ade44490b3f6" xlink:href="efoi-20210331.xsd#efoi_NotePurchaseAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_a1db35f5-c326-4a36-a41a-f60feeb7cf57" xlink:to="loc_efoi_NotePurchaseAgreementMember_a1c23202-e2b2-49dc-b6cd-ade44490b3f6" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails" xlink:type="extended" id="i2c8d0a91e8604dde8c12def96b909da3_BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_a6f852f3-cf40-475f-9972-0d489468cce8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent_e9555b82-9f57-41db-9211-f8a894d8b123" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_a6f852f3-cf40-475f-9972-0d489468cce8" xlink:to="loc_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent_e9555b82-9f57-41db-9211-f8a894d8b123" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6108be63-3ed7-43a2-9ed1-46683dcd98d9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_a6f852f3-cf40-475f-9972-0d489468cce8" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6108be63-3ed7-43a2-9ed1-46683dcd98d9" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_e4996330-ee31-4d65-ad57-c6cdd4e2834b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6108be63-3ed7-43a2-9ed1-46683dcd98d9" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_e4996330-ee31-4d65-ad57-c6cdd4e2834b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_e4996330-ee31-4d65-ad57-c6cdd4e2834b_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_e4996330-ee31-4d65-ad57-c6cdd4e2834b" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_e4996330-ee31-4d65-ad57-c6cdd4e2834b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_939187bf-22e4-441d-aa54-692a952bb9c2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_e4996330-ee31-4d65-ad57-c6cdd4e2834b" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_939187bf-22e4-441d-aa54-692a952bb9c2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember_de52babc-bb73-4355-b6cc-36bfbebf53ff" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsRecurringMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_939187bf-22e4-441d-aa54-692a952bb9c2" xlink:to="loc_us-gaap_FairValueMeasurementsRecurringMember_de52babc-bb73-4355-b6cc-36bfbebf53ff" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_1ce752b0-ff6a-4fd6-b2bd-94540ed4dc9b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6108be63-3ed7-43a2-9ed1-46683dcd98d9" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_1ce752b0-ff6a-4fd6-b2bd-94540ed4dc9b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1ce752b0-ff6a-4fd6-b2bd-94540ed4dc9b_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_1ce752b0-ff6a-4fd6-b2bd-94540ed4dc9b" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1ce752b0-ff6a-4fd6-b2bd-94540ed4dc9b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_abc52dc5-9178-4c74-9886-41be6e495be6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_1ce752b0-ff6a-4fd6-b2bd-94540ed4dc9b" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_abc52dc5-9178-4c74-9886-41be6e495be6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_a50e1426-e55d-4b80-a54a-fd6f0afb4e43" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_abc52dc5-9178-4c74-9886-41be6e495be6" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_a50e1426-e55d-4b80-a54a-fd6f0afb4e43" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_f9378cef-0b8e-4aa4-bcf9-8d9d99c78a2d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_abc52dc5-9178-4c74-9886-41be6e495be6" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_f9378cef-0b8e-4aa4-bcf9-8d9d99c78a2d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_d627b1fe-78b4-4597-9fed-4e26a53fbf6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_abc52dc5-9178-4c74-9886-41be6e495be6" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_d627b1fe-78b4-4597-9fed-4e26a53fbf6e" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails" xlink:type="extended" id="i2378134ba92646488851e5f42ee4515a_BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_fc075cad-5dec-4224-9f3d-a61f05192625" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_d3b2414c-fca4-4b99-b95a-43759c812199" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_fc075cad-5dec-4224-9f3d-a61f05192625" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_d3b2414c-fca4-4b99-b95a-43759c812199" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_cf3a0e21-11e9-49dd-82da-4c180b21c30c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_fc075cad-5dec-4224-9f3d-a61f05192625" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_cf3a0e21-11e9-49dd-82da-4c180b21c30c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_ff5ce225-34b9-410d-8356-89d5c392fd68" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_fc075cad-5dec-4224-9f3d-a61f05192625" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_ff5ce225-34b9-410d-8356-89d5c392fd68" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_601bc5e9-9698-48c6-a818-66f63c554c23" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_fc075cad-5dec-4224-9f3d-a61f05192625" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_601bc5e9-9698-48c6-a818-66f63c554c23" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cc189bd4-f8e4-44cb-b799-cbe67012ba1c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_fc075cad-5dec-4224-9f3d-a61f05192625" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cc189bd4-f8e4-44cb-b799-cbe67012ba1c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_941f7429-c820-494f-a388-87e67daf5ca0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cc189bd4-f8e4-44cb-b799-cbe67012ba1c" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_941f7429-c820-494f-a388-87e67daf5ca0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_941f7429-c820-494f-a388-87e67daf5ca0_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_941f7429-c820-494f-a388-87e67daf5ca0" xlink:to="loc_us-gaap_EquityComponentDomain_941f7429-c820-494f-a388-87e67daf5ca0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_84dd5125-0491-4c4f-ae01-d243e54f7331" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_941f7429-c820-494f-a388-87e67daf5ca0" xlink:to="loc_us-gaap_EquityComponentDomain_84dd5125-0491-4c4f-ae01-d243e54f7331" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantMember_e83df4d1-e78c-44d9-9af8-dbd3f053c0a5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WarrantMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_84dd5125-0491-4c4f-ae01-d243e54f7331" xlink:to="loc_us-gaap_WarrantMember_e83df4d1-e78c-44d9-9af8-dbd3f053c0a5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_a7c8de39-2774-45cd-9897-82b9c2799612" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cc189bd4-f8e4-44cb-b799-cbe67012ba1c" xlink:to="loc_srt_RangeAxis_a7c8de39-2774-45cd-9897-82b9c2799612" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_a7c8de39-2774-45cd-9897-82b9c2799612_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_a7c8de39-2774-45cd-9897-82b9c2799612" xlink:to="loc_srt_RangeMember_a7c8de39-2774-45cd-9897-82b9c2799612_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_0552ff0e-3ce0-4df8-a826-0841f8be9b39" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_a7c8de39-2774-45cd-9897-82b9c2799612" xlink:to="loc_srt_RangeMember_0552ff0e-3ce0-4df8-a826-0841f8be9b39" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_0797924f-82c6-46da-a266-76f2daad42ff" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_0552ff0e-3ce0-4df8-a826-0841f8be9b39" xlink:to="loc_srt_MinimumMember_0797924f-82c6-46da-a266-76f2daad42ff" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_adcd8891-709e-4c74-9770-8ef51b6bf917" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_0552ff0e-3ce0-4df8-a826-0841f8be9b39" xlink:to="loc_srt_MaximumMember_adcd8891-709e-4c74-9770-8ef51b6bf917" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails" xlink:type="extended" id="ic58a977b245f447ca7ca52185518a02e_BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Restructuring" xlink:type="simple" xlink:href="efoi-20210331.xsd#Restructuring"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/Restructuring" xlink:type="extended" id="i23de248106484e518440a141f76359b1_Restructuring"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RestructuringTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#RestructuringTables"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/RestructuringTables" xlink:type="extended" id="i7d983875d1b64845971395beaf9ea259_RestructuringTables"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RestructuringNarrativeDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#RestructuringNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/RestructuringNarrativeDetails" xlink:type="extended" id="i79210a1cd9634a7eba75d23fe8b4f6ff_RestructuringNarrativeDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#RestructuringReconciliationofRestructuringLiabilityDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails" xlink:type="extended" id="i5d000b3610164700835b547b5f97ec42_RestructuringReconciliationofRestructuringLiabilityDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_aea9868c-3974-4bcf-96f9-35f39fc48f9a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveRollForward_32dc664d-b013-48b7-8237-75392bdb6d9d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserveRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_aea9868c-3974-4bcf-96f9-35f39fc48f9a" xlink:to="loc_us-gaap_RestructuringReserveRollForward_32dc664d-b013-48b7-8237-75392bdb6d9d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserve_3610b65d-24de-41c3-a120-f8ef91c05257" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserve"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringReserveRollForward_32dc664d-b013-48b7-8237-75392bdb6d9d" xlink:to="loc_us-gaap_RestructuringReserve_3610b65d-24de-41c3-a120-f8ef91c05257" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuringReserveAccretion_61a6933b-258c-4503-a6f2-7339b5f5ec68" xlink:href="efoi-20210331.xsd#efoi_RestructuringReserveAccretion"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringReserveRollForward_32dc664d-b013-48b7-8237-75392bdb6d9d" xlink:to="loc_efoi_RestructuringReserveAccretion_61a6933b-258c-4503-a6f2-7339b5f5ec68" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRestructuring_283405d5-6d50-443d-9932-f91997c1a502" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForRestructuring"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringReserveRollForward_32dc664d-b013-48b7-8237-75392bdb6d9d" xlink:to="loc_us-gaap_PaymentsForRestructuring_283405d5-6d50-443d-9932-f91997c1a502" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserve_fb7763c1-0626-42e9-b909-ff5ee4d6e7ee" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserve"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveCurrent_2e02f1f9-49d8-488b-a031-e75b47aeac61" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserveCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_aea9868c-3974-4bcf-96f9-35f39fc48f9a" xlink:to="loc_us-gaap_RestructuringReserveCurrent_2e02f1f9-49d8-488b-a031-e75b47aeac61" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveNoncurrent_32a8b67a-bdb9-49d7-93bd-afc69bb48613" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserveNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_aea9868c-3974-4bcf-96f9-35f39fc48f9a" xlink:to="loc_us-gaap_RestructuringReserveNoncurrent_32a8b67a-bdb9-49d7-93bd-afc69bb48613" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_babb19ec-c143-4974-ba96-5aea2622873f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_aea9868c-3974-4bcf-96f9-35f39fc48f9a" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_babb19ec-c143-4974-ba96-5aea2622873f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringPlanAxis_72017342-ab49-49f9-b7cc-48eab1f0aeb2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringPlanAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_babb19ec-c143-4974-ba96-5aea2622873f" xlink:to="loc_us-gaap_RestructuringPlanAxis_72017342-ab49-49f9-b7cc-48eab1f0aeb2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringPlanDomain_72017342-ab49-49f9-b7cc-48eab1f0aeb2_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringPlanDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RestructuringPlanAxis_72017342-ab49-49f9-b7cc-48eab1f0aeb2" xlink:to="loc_us-gaap_RestructuringPlanDomain_72017342-ab49-49f9-b7cc-48eab1f0aeb2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringPlanDomain_f114603f-851e-45be-a17e-38f0ee5d59ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringPlanDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RestructuringPlanAxis_72017342-ab49-49f9-b7cc-48eab1f0aeb2" xlink:to="loc_us-gaap_RestructuringPlanDomain_f114603f-851e-45be-a17e-38f0ee5d59ec" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2017RestructuringPlanMember_8673b5e3-7a49-478f-a984-ff88181ab6d4" xlink:href="efoi-20210331.xsd#efoi_A2017RestructuringPlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringPlanDomain_f114603f-851e-45be-a17e-38f0ee5d59ec" xlink:to="loc_efoi_A2017RestructuringPlanMember_8673b5e3-7a49-478f-a984-ff88181ab6d4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveAxis_be794c1d-9684-4c11-b6a1-6abcad8564a4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringCostAndReserveAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_babb19ec-c143-4974-ba96-5aea2622873f" xlink:to="loc_us-gaap_RestructuringCostAndReserveAxis_be794c1d-9684-4c11-b6a1-6abcad8564a4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfRestructuringDomain_be794c1d-9684-4c11-b6a1-6abcad8564a4_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TypeOfRestructuringDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RestructuringCostAndReserveAxis_be794c1d-9684-4c11-b6a1-6abcad8564a4" xlink:to="loc_us-gaap_TypeOfRestructuringDomain_be794c1d-9684-4c11-b6a1-6abcad8564a4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfRestructuringDomain_2349641c-620f-4148-b01d-13f162f461b1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TypeOfRestructuringDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RestructuringCostAndReserveAxis_be794c1d-9684-4c11-b6a1-6abcad8564a4" xlink:to="loc_us-gaap_TypeOfRestructuringDomain_2349641c-620f-4148-b01d-13f162f461b1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FacilityClosingMember_1171259a-521f-4f65-abfb-0f8ca1487a11" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FacilityClosingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TypeOfRestructuringDomain_2349641c-620f-4148-b01d-13f162f461b1" xlink:to="loc_us-gaap_FacilityClosingMember_1171259a-521f-4f65-abfb-0f8ca1487a11" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Inventories" xlink:type="simple" xlink:href="efoi-20210331.xsd#Inventories"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/Inventories" xlink:type="extended" id="i85dd3cd5343b4183af50c66da311361d_Inventories"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/InventoriesTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#InventoriesTables"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/InventoriesTables" xlink:type="extended" id="i5973750058aa4ef1868b90f70cac47df_InventoriesTables"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#InventoriesInventoriesNetDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails" xlink:type="extended" id="i6405d757b42f4b73a9c153123f608e44_InventoriesInventoriesNetDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#InventoriesReserveRollforwardDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails" xlink:type="extended" id="i88a9765b4dee44f091fc8181f92c2d9c_InventoriesReserveRollforwardDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/PropertyandEquipment" xlink:type="simple" xlink:href="efoi-20210331.xsd#PropertyandEquipment"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/PropertyandEquipment" xlink:type="extended" id="ibc2359eb6a3149018032e8e5ba006773_PropertyandEquipment"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/PropertyandEquipmentTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#PropertyandEquipmentTables"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/PropertyandEquipmentTables" xlink:type="extended" id="i7c0cac3aa69c4d4f8ea3d14e41c42b83_PropertyandEquipmentTables"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#PropertyandEquipmentScheduleofPropertyandEquipmentDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="extended" id="i74074387fb734a5989f322fc96ef27cc_PropertyandEquipmentScheduleofPropertyandEquipmentDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_acbfb850-dae2-4ce4-b1b6-7a287fc430bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_acbfb850-dae2-4ce4-b1b6-7a287fc430bd" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_2bc8ae8f-b2b0-4c27-b889-75394480d88e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_2bc8ae8f-b2b0-4c27-b889-75394480d88e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_8bf5275f-2cb9-4362-946f-59f8bcb87f45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_8bf5275f-2cb9-4362-946f-59f8bcb87f45" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_71994294-e42d-48fc-9018-bd02e9fe6363" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_71994294-e42d-48fc-9018-bd02e9fe6363" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_927c061b-b257-4e08-9820-3c53fbf22597" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Depreciation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:to="loc_us-gaap_Depreciation_927c061b-b257-4e08-9820-3c53fbf22597" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_3ae08036-82f8-45b2-b706-dba0aa437d6b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_3ae08036-82f8-45b2-b706-dba0aa437d6b" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_057a6e1e-2b3a-4841-bf8e-aa82ea6ff4bc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_3ae08036-82f8-45b2-b706-dba0aa437d6b" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_057a6e1e-2b3a-4841-bf8e-aa82ea6ff4bc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_057a6e1e-2b3a-4841-bf8e-aa82ea6ff4bc_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_057a6e1e-2b3a-4841-bf8e-aa82ea6ff4bc" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_057a6e1e-2b3a-4841-bf8e-aa82ea6ff4bc_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_057a6e1e-2b3a-4841-bf8e-aa82ea6ff4bc" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember_a920a86e-2f80-4e74-8cd2-f1173442be04" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquipmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_us-gaap_EquipmentMember_a920a86e-2f80-4e74-8cd2-f1173442be04" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ToolingMember_e8d388ab-e1d3-4a10-b223-6a997dc3aaac" xlink:href="efoi-20210331.xsd#efoi_ToolingMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_efoi_ToolingMember_e8d388ab-e1d3-4a10-b223-6a997dc3aaac" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VehiclesMember_1f72e898-a525-489e-a123-434a47ded0bb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VehiclesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_us-gaap_VehiclesMember_1f72e898-a525-489e-a123-434a47ded0bb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_ea739c4d-0498-4f62-9a53-bffda216807a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_ea739c4d-0498-4f62-9a53-bffda216807a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_e527c284-8ee0-40ea-8490-3d2907a2c494" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_e527c284-8ee0-40ea-8490-3d2907a2c494" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember_0bc612a7-5bc9-494c-9e6d-a45f51e16b47" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_us-gaap_LeaseholdImprovementsMember_0bc612a7-5bc9-494c-9e6d-a45f51e16b47" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetMember_6cf94595-e082-437f-ba37-0f9fff850f61" xlink:href="efoi-20210331.xsd#efoi_FinanceLeaseRightOfUseAssetMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_efoi_FinanceLeaseRightOfUseAssetMember_6cf94595-e082-437f-ba37-0f9fff850f61" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressMember_5c92b6b3-7e18-4477-a1e0-1660a99577a7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConstructionInProgressMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_us-gaap_ConstructionInProgressMember_5c92b6b3-7e18-4477-a1e0-1660a99577a7" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_2ce6e78f-a744-4d5d-ad4c-7a25e9025eff" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_3ae08036-82f8-45b2-b706-dba0aa437d6b" xlink:to="loc_srt_RangeAxis_2ce6e78f-a744-4d5d-ad4c-7a25e9025eff" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_2ce6e78f-a744-4d5d-ad4c-7a25e9025eff_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_2ce6e78f-a744-4d5d-ad4c-7a25e9025eff" xlink:to="loc_srt_RangeMember_2ce6e78f-a744-4d5d-ad4c-7a25e9025eff_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_1466d65f-5fa0-456e-81ee-b487ff5c4116" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_2ce6e78f-a744-4d5d-ad4c-7a25e9025eff" xlink:to="loc_srt_RangeMember_1466d65f-5fa0-456e-81ee-b487ff5c4116" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_97d59feb-5937-40ba-9d5a-33e6ec21b984" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_1466d65f-5fa0-456e-81ee-b487ff5c4116" xlink:to="loc_srt_MinimumMember_97d59feb-5937-40ba-9d5a-33e6ec21b984" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_9cd15399-a4a4-48cc-92b1-60487f62a681" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_1466d65f-5fa0-456e-81ee-b487ff5c4116" xlink:to="loc_srt_MaximumMember_9cd15399-a4a4-48cc-92b1-60487f62a681" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Leases" xlink:type="simple" xlink:href="efoi-20210331.xsd#Leases"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/Leases" xlink:type="extended" id="if6092cfef0e14ca5b3a3737b542c8851_Leases"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesTables"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/LeasesTables" xlink:type="extended" id="i0e6e14c939554e52a7bbdef2ece9ed21_LeasesTables"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesNarrativeDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/LeasesNarrativeDetails" xlink:type="extended" id="i1db35ecd4cb84dc3985d644449999338_LeasesNarrativeDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesComponentsofLeaseCostDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails" xlink:type="extended" id="i69096cdb970443b78c9df4b8fa1fb966_LeasesComponentsofLeaseCostDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesScheduleofSupplementalBalanceSheetInformationDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" xlink:type="extended" id="i8b779911c8494c35aba8dd5552027bbe_LeasesScheduleofSupplementalBalanceSheetInformationDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails" xlink:type="extended" id="i50dcee016f6647efa813c1d1ab5220f4_LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesScheduleofSupplementalCashFlowInformationDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails" xlink:type="extended" id="i6cf35f4f36cd46e6b958e9adb398eedf_LeasesScheduleofSupplementalCashFlowInformationDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Debt" xlink:type="simple" xlink:href="efoi-20210331.xsd#Debt"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/Debt" xlink:type="extended" id="i390844c8d8624b34be4808125177587a_Debt"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtCreditFacilitiesDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails" xlink:type="extended" id="i587a59cbf67f450b917f37d32d0a509b_DebtCreditFacilitiesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentNumberOfCreditFacilities_54502d96-817e-4371-adb3-dfef6fd58c0b" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentNumberOfCreditFacilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_DebtInstrumentNumberOfCreditFacilities_54502d96-817e-4371-adb3-dfef6fd58c0b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_960acf5b-234a-408c-8cfb-cbe6194782fc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_960acf5b-234a-408c-8cfb-cbe6194782fc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_42961a38-a0b5-47c8-bd16-f44e6afe48c0" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_42961a38-a0b5-47c8-bd16-f44e6afe48c0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_9426cde8-6434-4a29-b57b-ba63da95efa6" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_9426cde8-6434-4a29-b57b-ba63da95efa6" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_2fd07a33-3c4a-4b34-947e-9bf80dbe5eb1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_2fd07a33-3c4a-4b34-947e-9bf80dbe5eb1" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent_6ebf76fd-22e5-4bf4-b58a-edb26ddef898" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityMonthlyFacilityFeePercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent_6ebf76fd-22e5-4bf4-b58a-edb26ddef898" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityMonthlyFacilityFee_1c344b11-3a6d-4cf3-8a30-d3bf5f00b599" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityMonthlyFacilityFee"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityMonthlyFacilityFee_1c344b11-3a6d-4cf3-8a30-d3bf5f00b599" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent_0e175f33-baaf-4a88-b1cc-5cd316092a48" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent_0e175f33-baaf-4a88-b1cc-5cd316092a48" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee_7e253895-0389-419f-92e9-467bf849dc4d" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee_7e253895-0389-419f-92e9-467bf849dc4d" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnamortizedDebtIssuanceExpense_bca4462a-a77c-4e45-bbfd-87b5bf950613" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UnamortizedDebtIssuanceExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_UnamortizedDebtIssuanceExpense_bca4462a-a77c-4e45-bbfd-87b5bf950613" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LinesOfCreditCurrent_7bcbeb38-02e0-4f15-a49d-3f51f4e9c552" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LinesOfCreditCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_LinesOfCreditCurrent_7bcbeb38-02e0-4f15-a49d-3f51f4e9c552" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityExpirationPeriod_224b671d-555e-4557-9c08-74a52397f253" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityExpirationPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_LineOfCreditFacilityExpirationPeriod_224b671d-555e-4557-9c08-74a52397f253" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_74f1789c-6fc3-475c-a132-3e0910de838c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_74f1789c-6fc3-475c-a132-3e0910de838c" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_ed3a9f8d-2f59-4c3b-8181-716e3bb22b05" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityCommitmentFeePercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_ed3a9f8d-2f59-4c3b-8181-716e3bb22b05" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod_7784090d-4e2a-4bd4-b4a8-78b964b4968f" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityAnnualFacilityFeePeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod_7784090d-4e2a-4bd4-b4a8-78b964b4968f" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityCollateralManagementFee_be8a544a-110b-4870-90e1-b11e29fcf745" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityCollateralManagementFee"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityCollateralManagementFee_be8a544a-110b-4870-90e1-b11e29fcf745" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDebtExtinguishmentCosts_da18ab7e-0a8b-4719-96d1-ad61e74af0e8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsOfDebtExtinguishmentCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_PaymentsOfDebtExtinguishmentCosts_da18ab7e-0a8b-4719-96d1-ad61e74af0e8" xlink:type="arc" order="16"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFeeAmount_d08c360a-0c45-4cf0-b0a7-5ec9bbd9f211" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentFeeAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_DebtInstrumentFeeAmount_d08c360a-0c45-4cf0-b0a7-5ec9bbd9f211" xlink:type="arc" order="17"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_cfbf38f1-bc6e-4099-bb3c-b0ccc312f942" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_cfbf38f1-bc6e-4099-bb3c-b0ccc312f942" xlink:type="arc" order="18"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_dfa5e3bb-2e5e-4d6c-a09e-2bb509d0db48" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:to="loc_us-gaap_CreditFacilityAxis_dfa5e3bb-2e5e-4d6c-a09e-2bb509d0db48" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_dfa5e3bb-2e5e-4d6c-a09e-2bb509d0db48_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_dfa5e3bb-2e5e-4d6c-a09e-2bb509d0db48" xlink:to="loc_us-gaap_CreditFacilityDomain_dfa5e3bb-2e5e-4d6c-a09e-2bb509d0db48_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_6987681a-b0ae-41d6-94e1-e7f3948ac20c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_dfa5e3bb-2e5e-4d6c-a09e-2bb509d0db48" xlink:to="loc_us-gaap_CreditFacilityDomain_6987681a-b0ae-41d6-94e1-e7f3948ac20c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_a50feef1-1577-449c-a3f6-360d81610362" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_6987681a-b0ae-41d6-94e1-e7f3948ac20c" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_a50feef1-1577-449c-a3f6-360d81610362" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_4a5fdb5f-9932-4ea5-8d99-c2757e3d0a3b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:to="loc_us-gaap_DebtInstrumentAxis_4a5fdb5f-9932-4ea5-8d99-c2757e3d0a3b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_4a5fdb5f-9932-4ea5-8d99-c2757e3d0a3b_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_4a5fdb5f-9932-4ea5-8d99-c2757e3d0a3b" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_4a5fdb5f-9932-4ea5-8d99-c2757e3d0a3b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_9b48b725-0494-4bf7-8fb8-46a46efe7e8b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_4a5fdb5f-9932-4ea5-8d99-c2757e3d0a3b" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_9b48b725-0494-4bf7-8fb8-46a46efe7e8b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryFacilityMember_7ef7aeb2-a1ee-4e0a-97ea-6488af90718c" xlink:href="efoi-20210331.xsd#efoi_InventoryFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_9b48b725-0494-4bf7-8fb8-46a46efe7e8b" xlink:to="loc_efoi_InventoryFacilityMember_7ef7aeb2-a1ee-4e0a-97ea-6488af90718c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ReceivablesFacilityMember_1ced5c20-47d8-476a-a405-5bf337b9819b" xlink:href="efoi-20210331.xsd#efoi_ReceivablesFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_9b48b725-0494-4bf7-8fb8-46a46efe7e8b" xlink:to="loc_efoi_ReceivablesFacilityMember_1ced5c20-47d8-476a-a405-5bf337b9819b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_AustinFacilityMember_365e06fc-8843-49bf-b7c2-38af811effe4" xlink:href="efoi-20210331.xsd#efoi_AustinFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_9b48b725-0494-4bf7-8fb8-46a46efe7e8b" xlink:to="loc_efoi_AustinFacilityMember_365e06fc-8843-49bf-b7c2-38af811effe4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_a08f318e-d389-458b-a7ce-f868afffaa05" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:to="loc_us-gaap_VariableRateAxis_a08f318e-d389-458b-a7ce-f868afffaa05" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_a08f318e-d389-458b-a7ce-f868afffaa05_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_VariableRateAxis_a08f318e-d389-458b-a7ce-f868afffaa05" xlink:to="loc_us-gaap_VariableRateDomain_a08f318e-d389-458b-a7ce-f868afffaa05_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_d75bffca-e374-4a25-8aae-1dc8349b69a4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_VariableRateAxis_a08f318e-d389-458b-a7ce-f868afffaa05" xlink:to="loc_us-gaap_VariableRateDomain_d75bffca-e374-4a25-8aae-1dc8349b69a4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_c6cd0c4a-96fc-4522-81c8-af348a2885ce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_d75bffca-e374-4a25-8aae-1dc8349b69a4" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_c6cd0c4a-96fc-4522-81c8-af348a2885ce" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrimeRateMember_a9c53e60-de5a-4b99-b81f-83114a46f826" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrimeRateMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_d75bffca-e374-4a25-8aae-1dc8349b69a4" xlink:to="loc_us-gaap_PrimeRateMember_a9c53e60-de5a-4b99-b81f-83114a46f826" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_cf34e047-c95b-4b83-a850-a1b413001e09" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_cf34e047-c95b-4b83-a850-a1b413001e09" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_cf34e047-c95b-4b83-a850-a1b413001e09_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_cf34e047-c95b-4b83-a850-a1b413001e09" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_cf34e047-c95b-4b83-a850-a1b413001e09_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_56952f72-0e66-4a53-a6b3-ce301c9d860b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_cf34e047-c95b-4b83-a850-a1b413001e09" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_56952f72-0e66-4a53-a6b3-ce301c9d860b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_6503dfbc-4edc-4137-9212-a629955e7c2a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_56952f72-0e66-4a53-a6b3-ce301c9d860b" xlink:to="loc_us-gaap_SubsequentEventMember_6503dfbc-4edc-4137-9212-a629955e7c2a" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtConvertibleNotesDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails" xlink:type="extended" id="i8ba357064afc4e01ada487af9376aa58_DebtConvertibleNotesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt_1f734f19-d944-4733-bdc1-f8e37f296de0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt_1f734f19-d944-4733-bdc1-f8e37f296de0" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt_204f8403-860f-4d1c-8cfd-38f9ae81eca9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtConversionOriginalDebtInterestRateOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt_204f8403-860f-4d1c-8cfd-38f9ae81eca9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_AccumulatedInterestOnSubordinatedDebt_c9680799-f686-466a-a595-6871dbbebb43" xlink:href="efoi-20210331.xsd#efoi_AccumulatedInterestOnSubordinatedDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_efoi_AccumulatedInterestOnSubordinatedDebt_c9680799-f686-466a-a595-6871dbbebb43" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_31216988-63b2-4da8-87c3-2f986c975dd0" xlink:href="efoi-20210331.xsd#efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_31216988-63b2-4da8-87c3-2f986c975dd0" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_7f785df6-1964-4b6b-a708-2fbb3a9a0ffc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentConvertibleConversionPrice1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_7f785df6-1964-4b6b-a708-2fbb3a9a0ffc" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_f77bed0d-aba7-4270-b4bc-24c378f7e82b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_f77bed0d-aba7-4270-b4bc-24c378f7e82b" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConversionOfStockSharesConverted1_4d8c722d-0b87-4070-802b-c483537eb332" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConversionOfStockSharesConverted1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_ConversionOfStockSharesConverted1_4d8c722d-0b87-4070-802b-c483537eb332" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_0921a7ce-dcbb-48e4-b81f-6c551694e33c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_0921a7ce-dcbb-48e4-b81f-6c551694e33c" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_14285e77-4237-4ac4-aba7-5f7da1c1ae40" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_LineOfCreditFacilityTable_14285e77-4237-4ac4-aba7-5f7da1c1ae40" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_7d34f71c-ff10-42d3-89ec-ef533da8c1d5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_14285e77-4237-4ac4-aba7-5f7da1c1ae40" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_7d34f71c-ff10-42d3-89ec-ef533da8c1d5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_7d34f71c-ff10-42d3-89ec-ef533da8c1d5_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_7d34f71c-ff10-42d3-89ec-ef533da8c1d5" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_7d34f71c-ff10-42d3-89ec-ef533da8c1d5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_ba262d6d-dac2-4886-8f9f-b9e7f9ebbf61" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_7d34f71c-ff10-42d3-89ec-ef533da8c1d5" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_ba262d6d-dac2-4886-8f9f-b9e7f9ebbf61" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertibleDebtMember_b30c858d-6f47-4587-abf6-9bd8dc8f1552" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertibleDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_ba262d6d-dac2-4886-8f9f-b9e7f9ebbf61" xlink:to="loc_us-gaap_ConvertibleDebtMember_b30c858d-6f47-4587-abf6-9bd8dc8f1552" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_8d598842-a115-47bb-8cef-2402ffe9104b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_14285e77-4237-4ac4-aba7-5f7da1c1ae40" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_8d598842-a115-47bb-8cef-2402ffe9104b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_8d598842-a115-47bb-8cef-2402ffe9104b_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_8d598842-a115-47bb-8cef-2402ffe9104b" xlink:to="loc_us-gaap_EquityComponentDomain_8d598842-a115-47bb-8cef-2402ffe9104b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_0ef6de31-8c95-440e-8c2d-83d802898d21" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_8d598842-a115-47bb-8cef-2402ffe9104b" xlink:to="loc_us-gaap_EquityComponentDomain_0ef6de31-8c95-440e-8c2d-83d802898d21" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_bf88ad49-6503-436a-bdd1-bdee6e0a61ad" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_0ef6de31-8c95-440e-8c2d-83d802898d21" xlink:to="loc_us-gaap_PreferredStockMember_bf88ad49-6503-436a-bdd1-bdee6e0a61ad" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_af70103e-4e62-4423-9074-c26ae91c563e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_0ef6de31-8c95-440e-8c2d-83d802898d21" xlink:to="loc_us-gaap_CommonStockMember_af70103e-4e62-4423-9074-c26ae91c563e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_11ba3dcd-9fcd-4b81-a316-887f384a1446" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_14285e77-4237-4ac4-aba7-5f7da1c1ae40" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_11ba3dcd-9fcd-4b81-a316-887f384a1446" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_11ba3dcd-9fcd-4b81-a316-887f384a1446_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_11ba3dcd-9fcd-4b81-a316-887f384a1446" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_11ba3dcd-9fcd-4b81-a316-887f384a1446_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_a90e3545-6c02-48f3-afe6-9677b83ff8c3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_11ba3dcd-9fcd-4b81-a316-887f384a1446" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_a90e3545-6c02-48f3-afe6-9677b83ff8c3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_161890b3-c9e8-495e-8671-2fb778f9f78b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_a90e3545-6c02-48f3-afe6-9677b83ff8c3" xlink:to="loc_us-gaap_SubsequentEventMember_161890b3-c9e8-495e-8671-2fb778f9f78b" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtIliadNoteDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtIliadNoteDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/DebtIliadNoteDetails" xlink:type="extended" id="ic700254a2de14b10bf9db7447d70bf0f_DebtIliadNoteDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_7528caf1-af29-4884-874b-a6ec907c02c4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_7528caf1-af29-4884-874b-a6ec907c02c4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedPremium_d5c94970-1af2-472c-b1ca-77b3eaa41e21" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentUnamortizedPremium"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedPremium_d5c94970-1af2-472c-b1ca-77b3eaa41e21" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt_1a56551e-cf4b-4574-9215-b024aa546f45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfDebt_1a56551e-cf4b-4574-9215-b024aa546f45" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsGross_9c4cf742-3ec4-40d6-9762-b80854c961be" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredFinanceCostsGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DeferredFinanceCostsGross_9c4cf742-3ec4-40d6-9762-b80854c961be" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_0477b66e-204d-43a6-a5dd-50fcf8aa5043" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_0477b66e-204d-43a6-a5dd-50fcf8aa5043" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_fe13bb9e-27a2-4f8a-ab26-6cca5a1c66bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_fe13bb9e-27a2-4f8a-ab26-6cca5a1c66bd" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_e4c9682c-d6c9-460f-9dba-0822de3e183e" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentProceedsToBePaidToLenderPercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_e4c9682c-d6c9-460f-9dba-0822de3e183e" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_9b18516e-d4ce-4349-b134-9d744075fb67" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOrSaleOfEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_9b18516e-d4ce-4349-b134-9d744075fb67" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable_c0d29521-81c2-4b74-9259-4d44b0fde18f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_RepaymentsOfNotesPayable_c0d29521-81c2-4b74-9259-4d44b0fde18f" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_48419a5e-5dad-4779-b2ce-b1a3c7018ddf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_48419a5e-5dad-4779-b2ce-b1a3c7018ddf" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_24391942-ac1a-4fcc-8803-cd4b20f290d8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_24391942-ac1a-4fcc-8803-cd4b20f290d8" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_58a8b021-b5fe-4ca6-b3da-ca6961b0da2e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DebtInstrumentTable_58a8b021-b5fe-4ca6-b3da-ca6961b0da2e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_6dfb1c64-d57d-44b9-80fe-668c8787bbf2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_58a8b021-b5fe-4ca6-b3da-ca6961b0da2e" xlink:to="loc_us-gaap_DebtInstrumentAxis_6dfb1c64-d57d-44b9-80fe-668c8787bbf2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_6dfb1c64-d57d-44b9-80fe-668c8787bbf2_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_6dfb1c64-d57d-44b9-80fe-668c8787bbf2" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_6dfb1c64-d57d-44b9-80fe-668c8787bbf2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_884fe0f6-fe4a-4fda-9397-02117a63f2b7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_6dfb1c64-d57d-44b9-80fe-668c8787bbf2" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_884fe0f6-fe4a-4fda-9397-02117a63f2b7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NotePurchaseAgreementMember_f3ae1aff-f977-4025-8e1a-fbfa944d0096" xlink:href="efoi-20210331.xsd#efoi_NotePurchaseAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_884fe0f6-fe4a-4fda-9397-02117a63f2b7" xlink:to="loc_efoi_NotePurchaseAgreementMember_f3ae1aff-f977-4025-8e1a-fbfa944d0096" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtStreetervilleNoteDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails" xlink:type="extended" id="ia17066a7c5a648bfa1b7eb4a9b8937e8_DebtStreetervilleNoteDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_98293706-b9fd-4cfc-a009-a45d65a7f170" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_97ce1074-c824-4e47-8b09-dd4dc6460f21" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_98293706-b9fd-4cfc-a009-a45d65a7f170" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_97ce1074-c824-4e47-8b09-dd4dc6460f21" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount_c3d2201b-f29a-4c8b-93b9-44e9bd21a3a6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_98293706-b9fd-4cfc-a009-a45d65a7f170" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscount_c3d2201b-f29a-4c8b-93b9-44e9bd21a3a6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt_32109cc0-61d2-4f76-86a6-7c7dc561e2e0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_98293706-b9fd-4cfc-a009-a45d65a7f170" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfDebt_32109cc0-61d2-4f76-86a6-7c7dc561e2e0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsGross_f2a27778-cc30-457d-9f82-28135ad6fc76" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredFinanceCostsGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_98293706-b9fd-4cfc-a009-a45d65a7f170" xlink:to="loc_us-gaap_DeferredFinanceCostsGross_f2a27778-cc30-457d-9f82-28135ad6fc76" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_617e7ebf-413a-427d-8aa9-39ece822e4d5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_98293706-b9fd-4cfc-a009-a45d65a7f170" xlink:to="loc_us-gaap_DebtInstrumentTable_617e7ebf-413a-427d-8aa9-39ece822e4d5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_eff9a6fc-0644-4a2b-b159-3c7cb6f99ddd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_617e7ebf-413a-427d-8aa9-39ece822e4d5" xlink:to="loc_us-gaap_DebtInstrumentAxis_eff9a6fc-0644-4a2b-b159-3c7cb6f99ddd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_eff9a6fc-0644-4a2b-b159-3c7cb6f99ddd_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_eff9a6fc-0644-4a2b-b159-3c7cb6f99ddd" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_eff9a6fc-0644-4a2b-b159-3c7cb6f99ddd_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_76669b31-c91e-497d-8ec3-58b03167de01" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_eff9a6fc-0644-4a2b-b159-3c7cb6f99ddd" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_76669b31-c91e-497d-8ec3-58b03167de01" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StreetervilleNotePurchaseAgreementMember_da96fcfc-62b1-4432-aea6-98b8471719f6" xlink:href="efoi-20210331.xsd#efoi_StreetervilleNotePurchaseAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_76669b31-c91e-497d-8ec3-58b03167de01" xlink:to="loc_efoi_StreetervilleNotePurchaseAgreementMember_da96fcfc-62b1-4432-aea6-98b8471719f6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_dbd16af2-e7e1-412b-a626-2adf96594558" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_617e7ebf-413a-427d-8aa9-39ece822e4d5" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_dbd16af2-e7e1-412b-a626-2adf96594558" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_dbd16af2-e7e1-412b-a626-2adf96594558_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_dbd16af2-e7e1-412b-a626-2adf96594558" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_dbd16af2-e7e1-412b-a626-2adf96594558_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_10a16890-9a4f-4006-882d-529e8bb84ba8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_dbd16af2-e7e1-412b-a626-2adf96594558" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_10a16890-9a4f-4006-882d-529e8bb84ba8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_cb7de0ea-df53-40b3-adf2-603ab1db815e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_10a16890-9a4f-4006-882d-529e8bb84ba8" xlink:to="loc_us-gaap_SubsequentEventMember_cb7de0ea-df53-40b3-adf2-603ab1db815e" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtPPPLoanDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtPPPLoanDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/DebtPPPLoanDetails" xlink:type="extended" id="i04e831a36f3a4c06a9cc9bddd316651c_DebtPPPLoanDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromLoanOriginations1_bb2054ae-f0cc-4fe1-93ab-c626a1960076" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromLoanOriginations1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:to="loc_us-gaap_ProceedsFromLoanOriginations1_bb2054ae-f0cc-4fe1-93ab-c626a1960076" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_2a113807-9d95-4487-8509-40132c287f8f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_2a113807-9d95-4487-8509-40132c287f8f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentProtectionProgramCurrent_a2564fca-9ac5-46ba-a1e5-1aa2d3d8254a" xlink:href="efoi-20210331.xsd#efoi_PaymentProtectionProgramCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:to="loc_efoi_PaymentProtectionProgramCurrent_a2564fca-9ac5-46ba-a1e5-1aa2d3d8254a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentProtectionProgramNoncurrent_41602719-7526-4fa2-ac02-530bcccb637d" xlink:href="efoi-20210331.xsd#efoi_PaymentProtectionProgramNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:to="loc_efoi_PaymentProtectionProgramNoncurrent_41602719-7526-4fa2-ac02-530bcccb637d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_b8818557-7d7b-4b46-a656-6a577e9146a1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_b8818557-7d7b-4b46-a656-6a577e9146a1" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_ec538198-6dcb-4e35-ba38-ce9005c7feae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:to="loc_us-gaap_DebtInstrumentTable_ec538198-6dcb-4e35-ba38-ce9005c7feae" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_22fb52aa-2714-4575-94ab-7614732dedde" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_ec538198-6dcb-4e35-ba38-ce9005c7feae" xlink:to="loc_us-gaap_DebtInstrumentAxis_22fb52aa-2714-4575-94ab-7614732dedde" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_22fb52aa-2714-4575-94ab-7614732dedde_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_22fb52aa-2714-4575-94ab-7614732dedde" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_22fb52aa-2714-4575-94ab-7614732dedde_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_b5c4ff4d-85a4-4100-959a-b3d3f7ae4912" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_22fb52aa-2714-4575-94ab-7614732dedde" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_b5c4ff4d-85a4-4100-959a-b3d3f7ae4912" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaycheckProtectionProgramCARESActMember_013279f1-d70e-4be9-abeb-3ae6894c1914" xlink:href="efoi-20210331.xsd#efoi_PaycheckProtectionProgramCARESActMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_b5c4ff4d-85a4-4100-959a-b3d3f7ae4912" xlink:to="loc_efoi_PaycheckProtectionProgramCARESActMember_013279f1-d70e-4be9-abeb-3ae6894c1914" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/IncomeTaxes" xlink:type="simple" xlink:href="efoi-20210331.xsd#IncomeTaxes"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/IncomeTaxes" xlink:type="extended" id="i0cb95b93276c43e5bdd9e73fb6c9c217_IncomeTaxes"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#IncomeTaxesNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails" xlink:type="extended" id="if67a35028d2649168d137eab3163ade8_IncomeTaxesNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_e4c73a0c-6dbb-4ccb-938d-22e3044962d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_061b70d7-4aae-49f0-910b-d9536fdcb4b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_e4c73a0c-6dbb-4ccb-938d-22e3044962d6" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_061b70d7-4aae-49f0-910b-d9536fdcb4b0" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations_a3178859-762f-4880-966f-0afed5c18f46" xlink:href="efoi-20210331.xsd#efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_e4c73a0c-6dbb-4ccb-938d-22e3044962d6" xlink:to="loc_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations_a3178859-762f-4880-966f-0afed5c18f46" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards_a8220272-b239-4d95-8c8a-d37b5dbd45b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwards"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_e4c73a0c-6dbb-4ccb-938d-22e3044962d6" xlink:to="loc_us-gaap_OperatingLossCarryforwards_a8220272-b239-4d95-8c8a-d37b5dbd45b0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration_fde2316a-4b89-43cc-a3c5-d8dafe784f84" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_e4c73a0c-6dbb-4ccb-938d-22e3044962d6" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration_fde2316a-4b89-43cc-a3c5-d8dafe784f84" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable_47a0100c-740c-4115-bfe1-cb4ac158a665" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_e4c73a0c-6dbb-4ccb-938d-22e3044962d6" xlink:to="loc_us-gaap_OperatingLossCarryforwardsTable_47a0100c-740c-4115-bfe1-cb4ac158a665" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_b202e11e-3c86-4fc4-acc1-3bfbe94af76e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_47a0100c-740c-4115-bfe1-cb4ac158a665" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_b202e11e-3c86-4fc4-acc1-3bfbe94af76e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_b202e11e-3c86-4fc4-acc1-3bfbe94af76e_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_b202e11e-3c86-4fc4-acc1-3bfbe94af76e" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_b202e11e-3c86-4fc4-acc1-3bfbe94af76e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_9a99559f-4856-4c7b-b9a6-91433df36ff1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_b202e11e-3c86-4fc4-acc1-3bfbe94af76e" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_9a99559f-4856-4c7b-b9a6-91433df36ff1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember_ee02ab26-229e-4eae-9ae6-da76989d112e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DomesticCountryMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_9a99559f-4856-4c7b-b9a6-91433df36ff1" xlink:to="loc_us-gaap_DomesticCountryMember_ee02ab26-229e-4eae-9ae6-da76989d112e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_2d4bbc41-bcd5-4c58-add5-cb0a5798d933" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_9a99559f-4856-4c7b-b9a6-91433df36ff1" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_2d4bbc41-bcd5-4c58-add5-cb0a5798d933" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquity" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquity"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquity" xlink:type="extended" id="ifdc3294f256d4a7b98472574f90156fe_StockholdersEquity"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityTables"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityTables" xlink:type="extended" id="iea7d1bfaa9894b658a97d8206bae1ad2_StockholdersEquityTables"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockSplitDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityStockSplitDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityStockSplitDetails" xlink:type="extended" id="ie7a86a40d81d49a78cff2c020cee257a_StockholdersEquityStockSplitDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityPreferredStockDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails" xlink:type="extended" id="i37158afa52244fafb7c461c0eacb0721_StockholdersEquityPreferredStockDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_a777e775-3422-4269-ae70-872051fbe675" xlink:href="efoi-20210331.xsd#efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_a777e775-3422-4269-ae70-872051fbe675" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_86fffb2b-f095-4adb-9ce5-36805ade1cb2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentConvertibleConversionPrice1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_86fffb2b-f095-4adb-9ce5-36805ade1cb2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_e9bc515f-437c-435b-bcea-0eef47e5e0c2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_e9bc515f-437c-435b-bcea-0eef47e5e0c2" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConversionOfStockSharesConverted1_1a82dcd9-5581-468f-b29b-d442af4ba88b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConversionOfStockSharesConverted1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_ConversionOfStockSharesConverted1_1a82dcd9-5581-468f-b29b-d442af4ba88b" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_19d419fb-c131-433c-a7cb-acc98c1a7827" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_19d419fb-c131-433c-a7cb-acc98c1a7827" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_bd35f5aa-4a39-4b8c-9f54-5c1bdfbe39ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_bd35f5aa-4a39-4b8c-9f54-5c1bdfbe39ef" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_bb28bdc0-eb3f-44ff-85be-4b18661bc35b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_bb28bdc0-eb3f-44ff-85be-4b18661bc35b" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PercentageOfSeriesAPreferredStockEligibleToVote_64d34926-7103-4384-8bf8-1c4631e0a060" xlink:href="efoi-20210331.xsd#efoi_PercentageOfSeriesAPreferredStockEligibleToVote"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_efoi_PercentageOfSeriesAPreferredStockEligibleToVote_64d34926-7103-4384-8bf8-1c4631e0a060" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_101b0c1e-522c-42c0-a117-bc9b63ceec13" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_101b0c1e-522c-42c0-a117-bc9b63ceec13" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_101b0c1e-522c-42c0-a117-bc9b63ceec13_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_101b0c1e-522c-42c0-a117-bc9b63ceec13" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_101b0c1e-522c-42c0-a117-bc9b63ceec13_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_0cabc1f2-ba5d-4903-8012-cbc785dd9ee2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_101b0c1e-522c-42c0-a117-bc9b63ceec13" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_0cabc1f2-ba5d-4903-8012-cbc785dd9ee2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertibleDebtMember_3b952479-7107-44eb-a4af-2fe2917bf3a2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertibleDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_0cabc1f2-ba5d-4903-8012-cbc785dd9ee2" xlink:to="loc_us-gaap_ConvertibleDebtMember_3b952479-7107-44eb-a4af-2fe2917bf3a2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_828ae592-a6ed-4ffd-8eb6-f9adbeaa5466" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_828ae592-a6ed-4ffd-8eb6-f9adbeaa5466" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_828ae592-a6ed-4ffd-8eb6-f9adbeaa5466_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_828ae592-a6ed-4ffd-8eb6-f9adbeaa5466" xlink:to="loc_us-gaap_EquityComponentDomain_828ae592-a6ed-4ffd-8eb6-f9adbeaa5466_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_3381720a-726d-4754-a54a-a748a0e453ed" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_828ae592-a6ed-4ffd-8eb6-f9adbeaa5466" xlink:to="loc_us-gaap_EquityComponentDomain_3381720a-726d-4754-a54a-a748a0e453ed" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_f5e9a065-bff1-40ba-9a7a-5fd0e8933950" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_3381720a-726d-4754-a54a-a748a0e453ed" xlink:to="loc_us-gaap_PreferredStockMember_f5e9a065-bff1-40ba-9a7a-5fd0e8933950" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_66708f2b-2c72-4b5f-bd31-53eebaf00a55" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_3381720a-726d-4754-a54a-a748a0e453ed" xlink:to="loc_us-gaap_CommonStockMember_66708f2b-2c72-4b5f-bd31-53eebaf00a55" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_a1af24a2-68e7-4392-a0c8-1a18a6405647" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_a1af24a2-68e7-4392-a0c8-1a18a6405647" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_a1af24a2-68e7-4392-a0c8-1a18a6405647_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_a1af24a2-68e7-4392-a0c8-1a18a6405647" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_a1af24a2-68e7-4392-a0c8-1a18a6405647_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_18462fd0-dfa7-4995-a221-53a925a6415e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_a1af24a2-68e7-4392-a0c8-1a18a6405647" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_18462fd0-dfa7-4995-a221-53a925a6415e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_c79fb249-8f57-4848-a328-4862f78cc54d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_18462fd0-dfa7-4995-a221-53a925a6415e" xlink:to="loc_us-gaap_SubsequentEventMember_c79fb249-8f57-4848-a328-4862f78cc54d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_37e80e84-851a-4989-b597-eb962d186438" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:to="loc_us-gaap_StatementClassOfStockAxis_37e80e84-851a-4989-b597-eb962d186438" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_37e80e84-851a-4989-b597-eb962d186438_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_37e80e84-851a-4989-b597-eb962d186438" xlink:to="loc_us-gaap_ClassOfStockDomain_37e80e84-851a-4989-b597-eb962d186438_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_32ec6253-273f-4522-8e06-b8a7f639a052" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_37e80e84-851a-4989-b597-eb962d186438" xlink:to="loc_us-gaap_ClassOfStockDomain_32ec6253-273f-4522-8e06-b8a7f639a052" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_45c4a04b-5b58-486d-b953-a46ef0d8d4ab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockDomain_32ec6253-273f-4522-8e06-b8a7f639a052" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_45c4a04b-5b58-486d-b953-a46ef0d8d4ab" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityIssuanceofCommonStockandWarrantsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails" xlink:type="extended" id="i17585aada9a14bfc8b10c291f0084bd5_StockholdersEquityIssuanceofCommonStockandWarrantsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_043fa76b-20a8-4b86-b4a7-bb1514c47286" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_043fa76b-20a8-4b86-b4a7-bb1514c47286" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_d3a610ca-5eb4-41fa-8a92-cb0c3f635fe7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_d3a610ca-5eb4-41fa-8a92-cb0c3f635fe7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_c2fff5f6-32a8-4118-b218-174a8c712da9" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_c2fff5f6-32a8-4118-b218-174a8c712da9" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_31963e73-7900-4b74-8013-d63c440a0b6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_31963e73-7900-4b74-8013-d63c440a0b6e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_6d60326a-a672-4a6e-8e75-7420ab4c6138" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_6d60326a-a672-4a6e-8e75-7420ab4c6138" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions_88179963-d3f9-4337-94c7-4733c27ff561" xlink:href="efoi-20210331.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_PaymentsForPlacementAgentCommissions_88179963-d3f9-4337-94c7-4733c27ff561" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_3a15a3cb-5722-4aa4-ab8e-a8085a29d22c" xlink:href="efoi-20210331.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_3a15a3cb-5722-4aa4-ab8e-a8085a29d22c" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees_b04fb772-9c1e-4894-80e9-1ae8c6cce004" xlink:href="efoi-20210331.xsd#efoi_PaymentsForClearingFees"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_PaymentsForClearingFees_b04fb772-9c1e-4894-80e9-1ae8c6cce004" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_eea69bb3-4ce9-42ba-bd97-7a166bccee7b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_eea69bb3-4ce9-42ba-bd97-7a166bccee7b" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_fa70d288-c9f7-4f88-8f8c-9972258ea0a1" xlink:href="efoi-20210331.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_fa70d288-c9f7-4f88-8f8c-9972258ea0a1" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_1381289c-37ca-46b1-9dbe-8e2c9a83330b" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentProceedsToBePaidToLenderPercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_1381289c-37ca-46b1-9dbe-8e2c9a83330b" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_8d1e2e80-fa83-4aba-a448-1b4a7e3b7541" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOrSaleOfEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_8d1e2e80-fa83-4aba-a448-1b4a7e3b7541" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable_997208ac-a2b1-4302-b4e8-8dc9690b1cce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_RepaymentsOfNotesPayable_997208ac-a2b1-4302-b4e8-8dc9690b1cce" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfWarrants_463d3d62-ee26-4e45-a9f5-939459e59bb6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfWarrants"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfWarrants_463d3d62-ee26-4e45-a9f5-939459e59bb6" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_991ad385-fc48-4bf1-b06c-b95097ab1214" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_991ad385-fc48-4bf1-b06c-b95097ab1214" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_0e137fe5-cd18-413e-995e-c0e77d1a43a5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_0e137fe5-cd18-413e-995e-c0e77d1a43a5" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_497320f3-cf87-4570-9228-3799596559ab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_497320f3-cf87-4570-9228-3799596559ab" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_d9477ee7-c037-4153-95d1-7aa3d3db7176" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_497320f3-cf87-4570-9228-3799596559ab" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_d9477ee7-c037-4153-95d1-7aa3d3db7176" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_d9477ee7-c037-4153-95d1-7aa3d3db7176_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_d9477ee7-c037-4153-95d1-7aa3d3db7176" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_d9477ee7-c037-4153-95d1-7aa3d3db7176_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_b159ab09-5e14-4cd6-a09c-12ea4c21ebb2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_d9477ee7-c037-4153-95d1-7aa3d3db7176" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_b159ab09-5e14-4cd6-a09c-12ea4c21ebb2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_a49fae56-5325-46fa-991b-6e03c22c9c48" xlink:href="efoi-20210331.xsd#efoi_InstitutionalInvestorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_b159ab09-5e14-4cd6-a09c-12ea4c21ebb2" xlink:to="loc_efoi_InstitutionalInvestorMember_a49fae56-5325-46fa-991b-6e03c22c9c48" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrivatePlacementMember_92e7587e-c12c-4ef3-912e-3549dc284a50" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrivatePlacementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_b159ab09-5e14-4cd6-a09c-12ea4c21ebb2" xlink:to="loc_us-gaap_PrivatePlacementMember_92e7587e-c12c-4ef3-912e-3549dc284a50" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_e90a5b26-8df9-4210-b3ea-84ce0a56d12d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_497320f3-cf87-4570-9228-3799596559ab" xlink:to="loc_us-gaap_DebtInstrumentAxis_e90a5b26-8df9-4210-b3ea-84ce0a56d12d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_e90a5b26-8df9-4210-b3ea-84ce0a56d12d_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_e90a5b26-8df9-4210-b3ea-84ce0a56d12d" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_e90a5b26-8df9-4210-b3ea-84ce0a56d12d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_da7510c0-18bd-4b0e-b4c4-c11facd31376" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_e90a5b26-8df9-4210-b3ea-84ce0a56d12d" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_da7510c0-18bd-4b0e-b4c4-c11facd31376" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NotePurchaseAgreementMember_ce2c39a7-f2bc-4d76-9236-02c4a8064a5a" xlink:href="efoi-20210331.xsd#efoi_NotePurchaseAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_da7510c0-18bd-4b0e-b4c4-c11facd31376" xlink:to="loc_efoi_NotePurchaseAgreementMember_ce2c39a7-f2bc-4d76-9236-02c4a8064a5a" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityWarrantsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityWarrantsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityWarrantsDetails" xlink:type="extended" id="i82f13a74ea2542d5964fbdc496774ae9_StockholdersEquityWarrantsDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityScheduleofWarrantsOutstandingDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails" xlink:type="extended" id="idbf7772931dc4e7a841f06b7be59eda7_StockholdersEquityScheduleofWarrantsOutstandingDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_02020456-d32b-4d76-b8ed-9467ec19e14f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_5f3afaa8-1cae-46bd-8f34-0af18c9f7a50" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_02020456-d32b-4d76-b8ed-9467ec19e14f" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_5f3afaa8-1cae-46bd-8f34-0af18c9f7a50" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_c0a3ec2f-0b87-4a39-8163-dd7297814fed" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_02020456-d32b-4d76-b8ed-9467ec19e14f" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_c0a3ec2f-0b87-4a39-8163-dd7297814fed" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a994d0cd-a1bf-447b-b0bd-7a0143d83447" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_02020456-d32b-4d76-b8ed-9467ec19e14f" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a994d0cd-a1bf-447b-b0bd-7a0143d83447" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_7fb4ec60-5bef-4b2f-8796-e655ff62c0b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a994d0cd-a1bf-447b-b0bd-7a0143d83447" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_7fb4ec60-5bef-4b2f-8796-e655ff62c0b0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_7fb4ec60-5bef-4b2f-8796-e655ff62c0b0_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_7fb4ec60-5bef-4b2f-8796-e655ff62c0b0" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_7fb4ec60-5bef-4b2f-8796-e655ff62c0b0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_93f59490-3df6-48da-96e6-91ee10be616e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_7fb4ec60-5bef-4b2f-8796-e655ff62c0b0" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_93f59490-3df6-48da-96e6-91ee10be616e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_d96f0365-92e2-4847-b2b6-709def79bfe4" xlink:href="efoi-20210331.xsd#efoi_InstitutionalInvestorMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_93f59490-3df6-48da-96e6-91ee10be616e" xlink:to="loc_efoi_InstitutionalInvestorMember_d96f0365-92e2-4847-b2b6-709def79bfe4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrivatePlacementMember_01c7d8ea-44c8-4dfb-af53-6b7cd546d252" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrivatePlacementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_93f59490-3df6-48da-96e6-91ee10be616e" xlink:to="loc_us-gaap_PrivatePlacementMember_01c7d8ea-44c8-4dfb-af53-6b7cd546d252" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityStockBasedCompensationDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails" xlink:type="extended" id="icedf01664cec41cebd97a72325ba6bb3_StockholdersEquityStockBasedCompensationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_29274011-baad-480b-ba53-e2e0c152e08e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_735a3c63-b5b6-4cb4-8e7e-e587a22ea447" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_29274011-baad-480b-ba53-e2e0c152e08e" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_735a3c63-b5b6-4cb4-8e7e-e587a22ea447" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_1c49c04a-898b-4f40-b121-dfed993c7b42" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_29274011-baad-480b-ba53-e2e0c152e08e" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_1c49c04a-898b-4f40-b121-dfed993c7b42" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_79a2df0e-ad53-4f06-bc2a-d3231b90d17f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_29274011-baad-480b-ba53-e2e0c152e08e" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_79a2df0e-ad53-4f06-bc2a-d3231b90d17f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_d72091cb-135e-4796-93bf-ad9dd5963622" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_29274011-baad-480b-ba53-e2e0c152e08e" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_d72091cb-135e-4796-93bf-ad9dd5963622" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_dd3d2044-110a-4766-88e9-bb9d7ba68f12" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_d72091cb-135e-4796-93bf-ad9dd5963622" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_dd3d2044-110a-4766-88e9-bb9d7ba68f12" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_dd3d2044-110a-4766-88e9-bb9d7ba68f12_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_dd3d2044-110a-4766-88e9-bb9d7ba68f12" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_dd3d2044-110a-4766-88e9-bb9d7ba68f12_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_9af93a81-7d8c-4898-9fad-fa0fb82faf4c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_dd3d2044-110a-4766-88e9-bb9d7ba68f12" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_9af93a81-7d8c-4898-9fad-fa0fb82faf4c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_2fb37b7c-9399-4051-8840-b2171527768d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfSalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_9af93a81-7d8c-4898-9fad-fa0fb82faf4c" xlink:to="loc_us-gaap_CostOfSalesMember_2fb37b7c-9399-4051-8840-b2171527768d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_0e8e662a-b8c2-4d0e-a297-c3e4e984091b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_9af93a81-7d8c-4898-9fad-fa0fb82faf4c" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_0e8e662a-b8c2-4d0e-a297-c3e4e984091b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_1973f725-ac33-45a8-aa3e-dde8389e028b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_9af93a81-7d8c-4898-9fad-fa0fb82faf4c" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_1973f725-ac33-45a8-aa3e-dde8389e028b" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityEstimatesUtilizedDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails" xlink:type="extended" id="i1c68553992564d63bdc542745cf9080b_StockholdersEquityEstimatesUtilizedDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityStockOptionsandaSummaryofActivityDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails" xlink:type="extended" id="i0b3040e5975a42518e7e34d24bc4a15b_StockholdersEquityStockOptionsandaSummaryofActivityDetails"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityRestrictedStockUnitsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails" xlink:type="extended" id="i60bf6599c407437780b856ab3e5cdbd7_StockholdersEquityRestrictedStockUnitsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_03a128b8-f82e-490b-a24c-386328cb3373" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_e3da6d8e-9445-44a9-98e3-ab76a3b589b1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_03a128b8-f82e-490b-a24c-386328cb3373" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_e3da6d8e-9445-44a9-98e3-ab76a3b589b1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_8b347443-1da1-4de5-80e7-26750b54bfc7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_e3da6d8e-9445-44a9-98e3-ab76a3b589b1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_8b347443-1da1-4de5-80e7-26750b54bfc7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_d0fc2a42-ae75-449f-a277-56cdf944579a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_e3da6d8e-9445-44a9-98e3-ab76a3b589b1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_d0fc2a42-ae75-449f-a277-56cdf944579a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_6e62c2c7-6b4c-4558-9390-518a22f133ca" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_e3da6d8e-9445-44a9-98e3-ab76a3b589b1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_6e62c2c7-6b4c-4558-9390-518a22f133ca" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_fb4ca361-6a64-42b9-8ce9-3790e862b3d5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_03a128b8-f82e-490b-a24c-386328cb3373" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_b38e5687-bb3f-434b-ad12-1b8630cf78e7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_b38e5687-bb3f-434b-ad12-1b8630cf78e7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_2e062e30-9e8a-466b-8ad3-5f5d7e2308b6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_2e062e30-9e8a-466b-8ad3-5f5d7e2308b6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_cb266f4e-c214-4ff7-849c-d42a66831c87" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_cb266f4e-c214-4ff7-849c-d42a66831c87" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_3898695d-b91e-4e72-979c-b26b04598b8c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_3898695d-b91e-4e72-979c-b26b04598b8c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_206f8941-2649-4344-8267-598c08d2c8d1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_edc41354-7dfa-46ba-95cc-af6cd47c29fa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_03a128b8-f82e-490b-a24c-386328cb3373" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_edc41354-7dfa-46ba-95cc-af6cd47c29fa" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_09076cc3-2e4d-4db9-aa53-fb3d56a0b694" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_edc41354-7dfa-46ba-95cc-af6cd47c29fa" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_09076cc3-2e4d-4db9-aa53-fb3d56a0b694" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0d06e52c-f6ff-473c-bc6e-1a0cabc8bf04" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_03a128b8-f82e-490b-a24c-386328cb3373" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0d06e52c-f6ff-473c-bc6e-1a0cabc8bf04" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_df5e1b6b-6524-4c92-9eb3-e96039ce58d0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0d06e52c-f6ff-473c-bc6e-1a0cabc8bf04" xlink:to="loc_us-gaap_AwardTypeAxis_df5e1b6b-6524-4c92-9eb3-e96039ce58d0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_df5e1b6b-6524-4c92-9eb3-e96039ce58d0_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_df5e1b6b-6524-4c92-9eb3-e96039ce58d0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_df5e1b6b-6524-4c92-9eb3-e96039ce58d0_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8ebc1552-f1bd-4a40-aa36-3fef3ee9d2da" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_df5e1b6b-6524-4c92-9eb3-e96039ce58d0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8ebc1552-f1bd-4a40-aa36-3fef3ee9d2da" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_8e62a5de-8c25-4e85-b4b9-791e5a0ee3d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8ebc1552-f1bd-4a40-aa36-3fef3ee9d2da" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_8e62a5de-8c25-4e85-b4b9-791e5a0ee3d6" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CommitmentsandContingencies" xlink:type="simple" xlink:href="efoi-20210331.xsd#CommitmentsandContingencies"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CommitmentsandContingencies" xlink:type="extended" id="i4bba28065d924f2d8491cb1487bd42f7_CommitmentsandContingencies"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#CommitmentsandContingenciesDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails" xlink:type="extended" id="i8602001435264e3c8d39c8453c779823_CommitmentsandContingenciesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentLineItems_d3629c23-02f4-4889-af6b-72f2802988fb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermPurchaseCommitmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PurchaseObligation_231e5f88-3ea2-4299-b727-6dc02c2c9a76" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PurchaseObligation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentLineItems_d3629c23-02f4-4889-af6b-72f2802988fb" xlink:to="loc_us-gaap_PurchaseObligation_231e5f88-3ea2-4299-b727-6dc02c2c9a76" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentAmount_de5a35ff-5aeb-4210-9eab-825a272d43f2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermPurchaseCommitmentAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentLineItems_d3629c23-02f4-4889-af6b-72f2802988fb" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentAmount_de5a35ff-5aeb-4210-9eab-825a272d43f2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentTable_130a4307-1c77-4e77-9c54-1db856670b56" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermPurchaseCommitmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentLineItems_d3629c23-02f4-4889-af6b-72f2802988fb" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentTable_130a4307-1c77-4e77-9c54-1db856670b56" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_2426626b-4124-491f-8441-caf31182d65c" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_StatementScenarioAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentTable_130a4307-1c77-4e77-9c54-1db856670b56" xlink:to="loc_srt_StatementScenarioAxis_2426626b-4124-491f-8441-caf31182d65c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_2426626b-4124-491f-8441-caf31182d65c_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementScenarioAxis_2426626b-4124-491f-8441-caf31182d65c" xlink:to="loc_srt_ScenarioUnspecifiedDomain_2426626b-4124-491f-8441-caf31182d65c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_088ecb46-c6b5-414c-9b5b-60197db15ce7" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementScenarioAxis_2426626b-4124-491f-8441-caf31182d65c" xlink:to="loc_srt_ScenarioUnspecifiedDomain_088ecb46-c6b5-414c-9b5b-60197db15ce7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember_719a7203-bf08-455d-a3b3-147901c7aedd" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScenarioForecastMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ScenarioUnspecifiedDomain_088ecb46-c6b5-414c-9b5b-60197db15ce7" xlink:to="loc_srt_ScenarioForecastMember_719a7203-bf08-455d-a3b3-147901c7aedd" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/SubsequentEvents" xlink:type="simple" xlink:href="efoi-20210331.xsd#SubsequentEvents"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/SubsequentEvents" xlink:type="extended" id="i6efe0c49829445f1b2f9f69306af3f1f_SubsequentEvents"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/SubsequentEventsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#SubsequentEventsDetails"/>
  <link:definitionLink xlink:role="http://www.energyfocusinc.com/role/SubsequentEventsDetails" xlink:type="extended" id="i5e1bc485254b48a4b29be79bed06ecfb_SubsequentEventsDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_9f0df5dc-b77d-44f9-aea1-c645e8f23f2c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_9f0df5dc-b77d-44f9-aea1-c645e8f23f2c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount_f03f774d-a1fa-4cfa-ab85-086c0775e6ae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscount_f03f774d-a1fa-4cfa-ab85-086c0775e6ae" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt_21857dc2-37b0-438e-8e0c-25018fb946f4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfDebt_21857dc2-37b0-438e-8e0c-25018fb946f4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsGross_cc9c8a82-3225-4941-86bc-ba25dbf1a4c6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredFinanceCostsGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_DeferredFinanceCostsGross_cc9c8a82-3225-4941-86bc-ba25dbf1a4c6" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_37e0f632-0193-4ca5-826d-d433d80fa202" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_37e0f632-0193-4ca5-826d-d433d80fa202" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentPrepaymentPremiumPercent_1ee44905-ac0f-4bdd-9885-47d28265acee" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentPrepaymentPremiumPercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_DebtInstrumentPrepaymentPremiumPercent_1ee44905-ac0f-4bdd-9885-47d28265acee" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtPrepaymentMaximumPercentage_3507deca-0256-4efe-87c1-8cbbfc4ba6b6" xlink:href="efoi-20210331.xsd#efoi_DebtPrepaymentMaximumPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_DebtPrepaymentMaximumPercentage_3507deca-0256-4efe-87c1-8cbbfc4ba6b6" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption_9def9897-4b71-48cd-a7f7-d2347bdd1cca" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption_9def9897-4b71-48cd-a7f7-d2347bdd1cca" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_481674f2-8aaa-43b0-865e-bb3cb9b7fbaa" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_481674f2-8aaa-43b0-865e-bb3cb9b7fbaa" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals_6cf4790b-a530-4305-986a-776c05fb5440" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals_6cf4790b-a530-4305-986a-776c05fb5440" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption_8918bc52-0940-4e8f-a0ce-2093bafa45f4" xlink:href="efoi-20210331.xsd#efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption_8918bc52-0940-4e8f-a0ce-2093bafa45f4" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_17fb25d0-7380-4998-b0e4-ba088876b2fc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_17fb25d0-7380-4998-b0e4-ba088876b2fc" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_0fa45be4-ef89-4495-9da2-5df2536cbce9" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_0fa45be4-ef89-4495-9da2-5df2536cbce9" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_848e411c-d2dc-47f7-8389-991faf695a52" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_848e411c-d2dc-47f7-8389-991faf695a52" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConversionOfStockSharesConverted1_222acbb0-8aad-4b0b-ad11-843258b85d73" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConversionOfStockSharesConverted1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_ConversionOfStockSharesConverted1_222acbb0-8aad-4b0b-ad11-843258b85d73" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_ae4169b0-2ec2-4aca-ab5f-499d55ecac18" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_ae4169b0-2ec2-4aca-ab5f-499d55ecac18" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_6a9a6b71-5c70-4cd2-984e-b737b7a0e065" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_6a9a6b71-5c70-4cd2-984e-b737b7a0e065" xlink:type="arc" order="16"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_c2773597-312f-430e-be62-76098de4991e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_c2773597-312f-430e-be62-76098de4991e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_c2773597-312f-430e-be62-76098de4991e_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_c2773597-312f-430e-be62-76098de4991e" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_c2773597-312f-430e-be62-76098de4991e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_e7f9be2c-0d65-4915-99fa-5ff6d152aec8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_c2773597-312f-430e-be62-76098de4991e" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_e7f9be2c-0d65-4915-99fa-5ff6d152aec8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_2c4f04f7-7fd0-4538-b693-1f6beff76d61" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_e7f9be2c-0d65-4915-99fa-5ff6d152aec8" xlink:to="loc_us-gaap_SubsequentEventMember_2c4f04f7-7fd0-4538-b693-1f6beff76d61" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_3b99bc63-d547-42ef-998a-368e5d207a06" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_DebtInstrumentAxis_3b99bc63-d547-42ef-998a-368e5d207a06" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_3b99bc63-d547-42ef-998a-368e5d207a06_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_3b99bc63-d547-42ef-998a-368e5d207a06" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_3b99bc63-d547-42ef-998a-368e5d207a06_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_212d54af-3546-438e-a344-a9ef3bf35af1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_3b99bc63-d547-42ef-998a-368e5d207a06" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_212d54af-3546-438e-a344-a9ef3bf35af1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StreetervilleNotePurchaseAgreementMember_964e8c58-4bad-4afc-bdb8-4709ea162092" xlink:href="efoi-20210331.xsd#efoi_StreetervilleNotePurchaseAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_212d54af-3546-438e-a344-a9ef3bf35af1" xlink:to="loc_efoi_StreetervilleNotePurchaseAgreementMember_964e8c58-4bad-4afc-bdb8-4709ea162092" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryFacilityMember_719afdb4-5f58-4da2-bfdb-26413867e6ad" xlink:href="efoi-20210331.xsd#efoi_InventoryFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_212d54af-3546-438e-a344-a9ef3bf35af1" xlink:to="loc_efoi_InventoryFacilityMember_719afdb4-5f58-4da2-bfdb-26413867e6ad" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_76ea36ed-6266-4cd9-9d1d-b21a3691d48f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_CreditFacilityAxis_76ea36ed-6266-4cd9-9d1d-b21a3691d48f" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_76ea36ed-6266-4cd9-9d1d-b21a3691d48f_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_76ea36ed-6266-4cd9-9d1d-b21a3691d48f" xlink:to="loc_us-gaap_CreditFacilityDomain_76ea36ed-6266-4cd9-9d1d-b21a3691d48f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_e41aa879-a470-4d3b-b70d-61e60aa96c3f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_76ea36ed-6266-4cd9-9d1d-b21a3691d48f" xlink:to="loc_us-gaap_CreditFacilityDomain_e41aa879-a470-4d3b-b70d-61e60aa96c3f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_c77e9229-c8e8-4ba7-8e1c-05701a38a600" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_e41aa879-a470-4d3b-b70d-61e60aa96c3f" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_c77e9229-c8e8-4ba7-8e1c-05701a38a600" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_fdef2de0-df0b-42fb-8c7f-e91247c1373b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_fdef2de0-df0b-42fb-8c7f-e91247c1373b" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_fdef2de0-df0b-42fb-8c7f-e91247c1373b_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_fdef2de0-df0b-42fb-8c7f-e91247c1373b" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_fdef2de0-df0b-42fb-8c7f-e91247c1373b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_913e8319-c6e0-418e-955e-8d917f758345" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_fdef2de0-df0b-42fb-8c7f-e91247c1373b" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_913e8319-c6e0-418e-955e-8d917f758345" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodOneMember_31cd2273-2ebd-451b-9c94-0447d89ea329" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodOneMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_913e8319-c6e0-418e-955e-8d917f758345" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodOneMember_31cd2273-2ebd-451b-9c94-0447d89ea329" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodTwoMember_756bfc8d-97af-4883-bf8a-71ae249c060c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodTwoMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_913e8319-c6e0-418e-955e-8d917f758345" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodTwoMember_756bfc8d-97af-4883-bf8a-71ae249c060c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_c2bb758d-dc25-467b-b4fd-d9ad4e001310" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_c2bb758d-dc25-467b-b4fd-d9ad4e001310" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_c2bb758d-dc25-467b-b4fd-d9ad4e001310_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_c2bb758d-dc25-467b-b4fd-d9ad4e001310" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_c2bb758d-dc25-467b-b4fd-d9ad4e001310_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_30a67935-d6af-47ad-8f91-5a944e51f3cf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_c2bb758d-dc25-467b-b4fd-d9ad4e001310" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_30a67935-d6af-47ad-8f91-5a944e51f3cf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertibleDebtMember_3fd588f7-03e2-46da-a765-ddcc8191c19e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertibleDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_30a67935-d6af-47ad-8f91-5a944e51f3cf" xlink:to="loc_us-gaap_ConvertibleDebtMember_3fd588f7-03e2-46da-a765-ddcc8191c19e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_92a9f956-b619-4f2b-b1cb-78ede46d0fb4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_92a9f956-b619-4f2b-b1cb-78ede46d0fb4" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_92a9f956-b619-4f2b-b1cb-78ede46d0fb4_default" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_92a9f956-b619-4f2b-b1cb-78ede46d0fb4" xlink:to="loc_us-gaap_EquityComponentDomain_92a9f956-b619-4f2b-b1cb-78ede46d0fb4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_7ebbc87a-8489-441c-beab-3f091573ee45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_92a9f956-b619-4f2b-b1cb-78ede46d0fb4" xlink:to="loc_us-gaap_EquityComponentDomain_7ebbc87a-8489-441c-beab-3f091573ee45" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_0bdcea1a-81a8-4559-a871-951c5fbdbe7a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_7ebbc87a-8489-441c-beab-3f091573ee45" xlink:to="loc_us-gaap_PreferredStockMember_0bdcea1a-81a8-4559-a871-951c5fbdbe7a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_62c8770c-e298-41ab-8bc8-d6f06b7c2422" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_7ebbc87a-8489-441c-beab-3f091573ee45" xlink:to="loc_us-gaap_CommonStockMember_62c8770c-e298-41ab-8bc8-d6f06b7c2422" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CounterpartyNameAxis_347af747-3da0-4857-b107-f29b9d856b2f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CounterpartyNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_srt_CounterpartyNameAxis_347af747-3da0-4857-b107-f29b9d856b2f" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RepurchaseAgreementCounterpartyNameDomain_347af747-3da0-4857-b107-f29b9d856b2f_default" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RepurchaseAgreementCounterpartyNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CounterpartyNameAxis_347af747-3da0-4857-b107-f29b9d856b2f" xlink:to="loc_srt_RepurchaseAgreementCounterpartyNameDomain_347af747-3da0-4857-b107-f29b9d856b2f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RepurchaseAgreementCounterpartyNameDomain_c972da92-f41b-4f0f-8fbc-f6af3cc604a4" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RepurchaseAgreementCounterpartyNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CounterpartyNameAxis_347af747-3da0-4857-b107-f29b9d856b2f" xlink:to="loc_srt_RepurchaseAgreementCounterpartyNameDomain_c972da92-f41b-4f0f-8fbc-f6af3cc604a4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FusionParkMember_56fb4fa1-d4e3-49e2-8fa2-87788b22ba75" xlink:href="efoi-20210331.xsd#efoi_FusionParkMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RepurchaseAgreementCounterpartyNameDomain_c972da92-f41b-4f0f-8fbc-f6af3cc604a4" xlink:to="loc_efoi_FusionParkMember_56fb4fa1-d4e3-49e2-8fa2-87788b22ba75" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_BrilliantStartMember_278c8f42-aa8f-4708-8f60-d2aeb9ce3c46" xlink:href="efoi-20210331.xsd#efoi_BrilliantStartMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RepurchaseAgreementCounterpartyNameDomain_c972da92-f41b-4f0f-8fbc-f6af3cc604a4" xlink:to="loc_efoi_BrilliantStartMember_278c8f42-aa8f-4708-8f60-d2aeb9ce3c46" xlink:type="arc" order="1"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>8
<FILENAME>efoi-20210331_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:e2a4800e-2bee-4a0f-9ce7-c0f26b88321d,g:b231b6ec-e457-4087-8af0-4631d4401d22-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_07b88af4-de5d-4ba0-aff0-033c646d0ed1_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LinesOfCreditCurrent_1235445c-a4ee-444c-8006-58649a230b0f_terseLabel_en-US" xlink:label="lab_us-gaap_LinesOfCreditCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit line borrowings, net of loan origination fees</link:label>
    <link:label id="lab_us-gaap_LinesOfCreditCurrent_label_en-US" xlink:label="lab_us-gaap_LinesOfCreditCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LinesOfCreditCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LinesOfCreditCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LinesOfCreditCurrent" xlink:to="lab_us-gaap_LinesOfCreditCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentType_ac07dc36-4709-4b5f-8cc1-6f23a8a0102b_terseLabel_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Type</link:label>
    <link:label id="lab_dei_DocumentType_label_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentType"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_44a78f07-1a28-4546-9343-6d7a53582a4f_negatedLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other expenses</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Nonoperating Income (Expense)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_fd3f657e-0944-4473-984c-16b55f556699_terseLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other comprehensive income:</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_7d88327f-bc74-465a-8971-c9551bbde6fe_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of warranty activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Product Warranty Liability [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_98a8da7a-941d-41af-8d9d-44f20025f5fb_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_ccd95d7e-f384-4022-98df-ff2376c4153b_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_60b8e9d1-da6e-4439-bff2-00da0c2555c3_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Released (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants_391451bd-b88a-4880-9d67-d7308285f06b_terseLabel_en-US" xlink:label="lab_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from the issuance of common stock and warrants</link:label>
    <link:label id="lab_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants_label_en-US" xlink:label="lab_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Issuance of Common Stock and Warrants</link:label>
    <link:label id="lab_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants_documentation_en-US" xlink:label="lab_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Issuance of Common Stock and Warrants</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants" xlink:href="efoi-20210331.xsd#efoi_ProceedsFromIssuanceOfCommonStockAndWarrants"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants" xlink:to="lab_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_1dabad33-fd83-41dc-9aa9-331eaea133c4_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Restructuring and Related Costs [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Restructuring and Related Costs [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_12049838-86f9-4fb7-95f4-ba334738df60_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Significant Unobservable Inputs (Level 3)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Inputs, Level 3 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel3Member" xlink:to="lab_us-gaap_FairValueInputsLevel3Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryWriteDown_fabf23ab-0c49-4f5f-888f-773836c586a9_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryWriteDown" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for slow-moving and obsolete inventories</link:label>
    <link:label id="lab_us-gaap_InventoryWriteDown_label_en-US" xlink:label="lab_us-gaap_InventoryWriteDown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Write-down</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryWriteDown"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryWriteDown" xlink:to="lab_us-gaap_InventoryWriteDown" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredOperatingLeaseLiabilityCurrent_18a547aa-6416-4b83-b6c3-ac56af8427bf_terseLabel_en-US" xlink:label="lab_efoi_RestructuredOperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured lease liabilities</link:label>
    <link:label id="lab_efoi_RestructuredOperatingLeaseLiabilityCurrent_label_en-US" xlink:label="lab_efoi_RestructuredOperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Operating Lease, Liability, Current</link:label>
    <link:label id="lab_efoi_RestructuredOperatingLeaseLiabilityCurrent_documentation_en-US" xlink:label="lab_efoi_RestructuredOperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Operating Lease, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseLiabilityCurrent" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredOperatingLeaseLiabilityCurrent" xlink:to="lab_efoi_RestructuredOperatingLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredFinanceCostsGross_a86769bc-3eac-4748-b907-b8d563d2e043_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredFinanceCostsGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unamortized debt issuance costs</link:label>
    <link:label id="lab_us-gaap_DeferredFinanceCostsGross_label_en-US" xlink:label="lab_us-gaap_DeferredFinanceCostsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Issuance Costs, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsGross" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredFinanceCostsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredFinanceCostsGross" xlink:to="lab_us-gaap_DeferredFinanceCostsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_2486956c-6e97-4c4b-b59a-e38958082f34_terseLabel_en-US" xlink:label="lab_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net proceeds from the conversion of convertible debt to preferred stock</link:label>
    <link:label id="lab_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_label_en-US" xlink:label="lab_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net proceeds from the conversion of convertible debt to preferred stock</link:label>
    <link:label id="lab_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_documentation_en-US" xlink:label="lab_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net proceeds from the conversion of convertible debt to preferred stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock" xlink:href="efoi-20210331.xsd#efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock" xlink:to="lab_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_38431126-81ab-40ad-a1d9-d9127c85700e_totalLabel_en-US" xlink:label="lab_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured lease income, net</link:label>
    <link:label id="lab_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_label_en-US" xlink:label="lab_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Lease, Operating Lease, Cost, Net Of Sublease Income</link:label>
    <link:label id="lab_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_documentation_en-US" xlink:label="lab_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Lease, Operating Lease, Cost, Net Of Sublease Income</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" xlink:to="lab_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_6879b1c9-d553-4c2c-88fa-2edd71338e4f_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Stockholders' Equity Note, Warrants or Rights</link:label>
    <link:label id="lab_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Stockholders' Equity Note, Warrants or Rights [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" xlink:to="lab_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromWarrantExercises_e0e45423-5972-40d5-b3b7-aed8b61f4fb8_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromWarrantExercises" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from the exercise of warrants</link:label>
    <link:label id="lab_us-gaap_ProceedsFromWarrantExercises_label_en-US" xlink:label="lab_us-gaap_ProceedsFromWarrantExercises" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Warrant Exercises</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromWarrantExercises" xlink:to="lab_us-gaap_ProceedsFromWarrantExercises" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeMember_7f098610-503f-4418-b490-e7920c998cc5_terseLabel_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:label id="lab_srt_RangeMember_label_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember" xlink:to="lab_srt_RangeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_9773000d-1dc9-4e45-a581-0794d1ce3ec0_terseLabel_en-US" xlink:label="lab_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument Subject To Mandatory Redemption, Maximum Amount</link:label>
    <link:label id="lab_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_label_en-US" xlink:label="lab_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument Subject To Mandatory Redemption, Maximum Amount</link:label>
    <link:label id="lab_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_documentation_en-US" xlink:label="lab_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument Subject To Mandatory Redemption, Maximum Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" xlink:to="lab_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeasesOperatingAbstract_6ed7f774-da52-4de7-aa0a-6e6db9883216_terseLabel_en-US" xlink:label="lab_us-gaap_LeasesOperatingAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Leases</link:label>
    <link:label id="lab_us-gaap_LeasesOperatingAbstract_label_en-US" xlink:label="lab_us-gaap_LeasesOperatingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases, Operating [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesOperatingAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesOperatingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesOperatingAbstract" xlink:to="lab_us-gaap_LeasesOperatingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_0dcd0a8a-5245-4bce-9c0c-0810e0f9f9e9_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringCostAndReserveLineItems_9c4e2137-675b-4c6f-a0c0-ce666f762526_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringCostAndReserveLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Cost and Reserve [Line Items]</link:label>
    <link:label id="lab_us-gaap_RestructuringCostAndReserveLineItems_label_en-US" xlink:label="lab_us-gaap_RestructuringCostAndReserveLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Cost and Reserve [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems" xlink:to="lab_us-gaap_RestructuringCostAndReserveLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_f298581d-eabb-4832-ae23-8ac124f188c9_terseLabel_en-US" xlink:label="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Movement in Standard and Extended Product Warranty, Increase (Decrease) [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_label_en-US" xlink:label="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Movement in Standard and Extended Product Warranty Accrual, Increase (Decrease) [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:to="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DomesticSupplierMember_325ea721-d739-4448-90b5-59471667f3c5_terseLabel_en-US" xlink:label="lab_efoi_DomesticSupplierMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Domestic Supplier</link:label>
    <link:label id="lab_efoi_DomesticSupplierMember_label_en-US" xlink:label="lab_efoi_DomesticSupplierMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Domestic Supplier [Member]</link:label>
    <link:label id="lab_efoi_DomesticSupplierMember_documentation_en-US" xlink:label="lab_efoi_DomesticSupplierMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Domestic Supplier</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DomesticSupplierMember" xlink:href="efoi-20210331.xsd#efoi_DomesticSupplierMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DomesticSupplierMember" xlink:to="lab_efoi_DomesticSupplierMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfDebt_176b66e4-ea31-4602-a81d-d11ae547decf_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase price</link:label>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfDebt_label_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Issuance of Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfDebt" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockMember_664fa736-ad41-4068-a8d5-c445e7a8e2f5_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock</link:label>
    <link:label id="lab_us-gaap_PreferredStockMember_label_en-US" xlink:label="lab_us-gaap_PreferredStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockMember" xlink:to="lab_us-gaap_PreferredStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_SecurityExchangeName_16a397cc-a829-490c-a3f9-6fa7626b7c44_terseLabel_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Security Exchange Name</link:label>
    <link:label id="lab_dei_SecurityExchangeName_label_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Security Exchange Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_SecurityExchangeName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName" xlink:to="lab_dei_SecurityExchangeName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_44d90af3-7cf6-492f-b9bb-c222f3f50cde_totalLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total adjustments</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualCurrent_f77b420d-3005-4ad2-81db-f203384da2c2_terseLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued warranty reserve</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualCurrent_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard Product Warranty Accrual, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StandardProductWarrantyAccrualCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyAccrualCurrent" xlink:to="lab_us-gaap_StandardProductWarrantyAccrualCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_baa8bbe7-e99a-4841-b7ae-74f47d79bfa1_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Loss from operations</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_label_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Income (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="lab_us-gaap_OperatingIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDepositOtherAssets_f145c665-b354-4ae9-a323-3bfbfa77283a_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDepositOtherAssets" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term deposits</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDepositOtherAssets_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDepositOtherAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Deposit Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInDepositOtherAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInDepositOtherAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_cb3c1b5b-3fca-4e9b-8113-e7e1dea153fd_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="lab_us-gaap_LiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_2a2dd1a3-f59c-4f58-aabd-36d13edaf84c_terseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid and other current assets</link:label>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_label_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid Expense and Other Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_db740bc2-706c-4153-a708-affd1270fdc9_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding at beginning of period (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_8f514053-98b7-4756-9f8e-344bea5e6849_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding at end of period (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateDomain_290f310a-8c4a-4294-86fa-45eb636eb3ae_terseLabel_en-US" xlink:label="lab_us-gaap_VariableRateDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:label id="lab_us-gaap_VariableRateDomain_label_en-US" xlink:label="lab_us-gaap_VariableRateDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateDomain" xlink:to="lab_us-gaap_VariableRateDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedProfessionalFeesCurrent_cdd31205-6497-49cb-94ae-22b06d6fa6b1_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedProfessionalFeesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued legal and professional fees</link:label>
    <link:label id="lab_us-gaap_AccruedProfessionalFeesCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedProfessionalFeesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Professional Fees, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedProfessionalFeesCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedProfessionalFeesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedProfessionalFeesCurrent" xlink:to="lab_us-gaap_AccruedProfessionalFeesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DebtPrepaymentMaximumPercentage_49b8871f-e342-4962-8588-612b94e59a9f_terseLabel_en-US" xlink:label="lab_efoi_DebtPrepaymentMaximumPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt prepayment limit, percent</link:label>
    <link:label id="lab_efoi_DebtPrepaymentMaximumPercentage_label_en-US" xlink:label="lab_efoi_DebtPrepaymentMaximumPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Prepayment Maximum, Percentage</link:label>
    <link:label id="lab_efoi_DebtPrepaymentMaximumPercentage_documentation_en-US" xlink:label="lab_efoi_DebtPrepaymentMaximumPercentage" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Prepayment Maximum, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtPrepaymentMaximumPercentage" xlink:href="efoi-20210331.xsd#efoi_DebtPrepaymentMaximumPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DebtPrepaymentMaximumPercentage" xlink:to="lab_efoi_DebtPrepaymentMaximumPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateAxis_6660f0f7-c748-4447-8ab0-9da93b246fea_terseLabel_en-US" xlink:label="lab_us-gaap_VariableRateAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:label id="lab_us-gaap_VariableRateAxis_label_en-US" xlink:label="lab_us-gaap_VariableRateAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateAxis" xlink:to="lab_us-gaap_VariableRateAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDue_bd8da4df-df41-46b8-9397-77d0d9a821e0_totalLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total future undiscounted lease payments</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDue_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Payment, Due</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_efcaef82-2772-4465-b68f-8d66e58ab477_negatedLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock withheld in lieu of income tax withholding on vesting of restricted stock units</link:label>
    <link:label id="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Decrease for Tax Withholding Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsAbstract_6842cde6-a806-4e8e-96ad-7b549b1500eb_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">ASSETS</link:label>
    <link:label id="lab_us-gaap_AssetsAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="lab_us-gaap_AssetsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeFinanceLeaseDescriptionAbstract_e429c18c-2deb-4804-9d7d-c91e7b01da18_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeFinanceLeaseDescriptionAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Leases</link:label>
    <link:label id="lab_us-gaap_LesseeFinanceLeaseDescriptionAbstract_label_en-US" xlink:label="lab_us-gaap_LesseeFinanceLeaseDescriptionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Finance Lease, Description [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeFinanceLeaseDescriptionAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeFinanceLeaseDescriptionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeFinanceLeaseDescriptionAbstract" xlink:to="lab_us-gaap_LesseeFinanceLeaseDescriptionAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_a51354ec-a7a6-4517-b30c-1e96c39abc42_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_70271d93-9041-4b4c-ac03-b838ddd4f050_terseLabel_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_label_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingPoliciesAbstract" xlink:to="lab_us-gaap_AccountingPoliciesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_3ffacabb-730c-4b39-ab38-65959254c072_terseLabel_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Furniture and fixtures</link:label>
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_label_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Furniture and Fixtures [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FurnitureAndFixturesMember" xlink:to="lab_us-gaap_FurnitureAndFixturesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressStateOrProvince_fe112623-4fba-4464-8e2d-892649ada892_terseLabel_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:label id="lab_dei_EntityAddressStateOrProvince_label_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressStateOrProvince"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince" xlink:to="lab_dei_EntityAddressStateOrProvince" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_06f65ac1-abd0-4fd3-b8ae-0bdfa155af09_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice_a69720c8-637c-4cf6-b2ae-e0f99036a761_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercise price (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeasePayments_52d56c00-4bbe-4b0c-bcd6-62567c6e04a3_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating cash flows from operating leases</link:label>
    <link:label id="lab_us-gaap_OperatingLeasePayments_label_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeasePayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasePayments" xlink:to="lab_us-gaap_OperatingLeasePayments" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeaseOperatingLeaseCost_b3fcc285-84c6-4463-aff0-7fc3d09c56e3_terseLabel_en-US" xlink:label="lab_efoi_RestructuredLeaseOperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease cost</link:label>
    <link:label id="lab_efoi_RestructuredLeaseOperatingLeaseCost_label_en-US" xlink:label="lab_efoi_RestructuredLeaseOperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Lease, Operating Lease, Cost</link:label>
    <link:label id="lab_efoi_RestructuredLeaseOperatingLeaseCost_documentation_en-US" xlink:label="lab_efoi_RestructuredLeaseOperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Lease, Operating Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseOperatingLeaseCost" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeaseOperatingLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeaseOperatingLeaseCost" xlink:to="lab_efoi_RestructuredLeaseOperatingLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_45819917-7172-4759-85db-066d78714814_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Payable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrent" xlink:to="lab_us-gaap_AccountsPayableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubleaseIncome_b4b6efbd-54b5-436a-a8b3-fd899db7977d_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_SubleaseIncome" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sub-lease income</link:label>
    <link:label id="lab_us-gaap_SubleaseIncome_label_en-US" xlink:label="lab_us-gaap_SubleaseIncome" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sublease Income</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubleaseIncome" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubleaseIncome"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubleaseIncome" xlink:to="lab_us-gaap_SubleaseIncome" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_9d626bdc-1ef0-4931-96c5-729f88aa7403_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</link:label>
    <link:label id="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_label_en-US" xlink:label="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:to="lab_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_d8826443-31eb-4793-b4bd-22ef16cc789e_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated deficit</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_639f4602-451f-4c4a-9dfb-29e2c3a837f7_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease right-of-use assets</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedSalesCommissionCurrent_406ba62c-dae1-4720-aa6a-308961384795_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedSalesCommissionCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued sales commissions</link:label>
    <link:label id="lab_us-gaap_AccruedSalesCommissionCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedSalesCommissionCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Sales Commission, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedSalesCommissionCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedSalesCommissionCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedSalesCommissionCurrent" xlink:to="lab_us-gaap_AccruedSalesCommissionCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentUnamortizedDiscount_cc4e5b84-045a-4b72-bb6a-5fac2274fa54_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentUnamortizedDiscount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issue discount</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentUnamortizedDiscount_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentUnamortizedDiscount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Unamortized Discount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentUnamortizedDiscount" xlink:to="lab_us-gaap_DebtInstrumentUnamortizedDiscount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt_85c52df4-3181-4c75-a14f-6820f78f45a0_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gain on forgiveness of PPP loan</link:label>
    <link:label id="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt_abcb18ba-b298-487a-884d-e276b9b62b10_terseLabel_en-US" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gain on forgiveness of PPP loan</link:label>
    <link:label id="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt_label_en-US" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gain (Loss) on Extinguishment of Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:to="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent_33f57a56-7d02-4694-956d-173bd4d4963e_terseLabel_en-US" xlink:label="lab_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Monthly service fee</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent_label_en-US" xlink:label="lab_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Monthly Facility Fee, Percent</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent_documentation_en-US" xlink:label="lab_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Monthly Facility Fee, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityMonthlyFacilityFeePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent" xlink:to="lab_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_9ca3e4b2-3a0d-4bc2-a2b1-9f0184f950c1_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding at beginning of period (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_7958433d-74a0-4ac9-b5ff-179742dbc93d_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding at end of period (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_0d974ac7-73ca-4753-8534-bf2278ae0a8f_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Assets and Liabilities Measured on Recurring Basis</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_1b927814-509b-4614-ab0e-031a764e93e9_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unearned stock-based compensation</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MajorCustomersAxis_90d610e2-aa31-436e-a61c-3140ce2175d0_terseLabel_en-US" xlink:label="lab_srt_MajorCustomersAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Axis]</link:label>
    <link:label id="lab_srt_MajorCustomersAxis_label_en-US" xlink:label="lab_srt_MajorCustomersAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MajorCustomersAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MajorCustomersAxis" xlink:to="lab_srt_MajorCustomersAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharesOutstanding_ddec05d1-bb04-4841-98fa-bd86880fd22c_periodStartLabel_en-US" xlink:label="lab_us-gaap_SharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at the beginning of the period (in shares)</link:label>
    <link:label id="lab_us-gaap_SharesOutstanding_1c7da718-c9c1-4a23-803f-12e5a03fd9e5_periodEndLabel_en-US" xlink:label="lab_us-gaap_SharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at the end of the period (in shares)</link:label>
    <link:label id="lab_us-gaap_SharesOutstanding_label_en-US" xlink:label="lab_us-gaap_SharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shares, Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesOutstanding" xlink:to="lab_us-gaap_SharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockValue_bee18303-a6cd-456d-8b4d-a4a141f1139a_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, par value $0.0001 per share</link:label>
    <link:label id="lab_us-gaap_PreferredStockValue_label_en-US" xlink:label="lab_us-gaap_PreferredStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Value, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockValue" xlink:to="lab_us-gaap_PreferredStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_PaymentsForPlacementAgentCommissions_ce8f398c-70a6-4183-bc12-372169d5480d_terseLabel_en-US" xlink:label="lab_efoi_PaymentsForPlacementAgentCommissions" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount paid for placement agent commissions</link:label>
    <link:label id="lab_efoi_PaymentsForPlacementAgentCommissions_label_en-US" xlink:label="lab_efoi_PaymentsForPlacementAgentCommissions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments For Placement Agent Commissions</link:label>
    <link:label id="lab_efoi_PaymentsForPlacementAgentCommissions_documentation_en-US" xlink:label="lab_efoi_PaymentsForPlacementAgentCommissions" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments For Placement Agent Commissions</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions" xlink:href="efoi-20210331.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PaymentsForPlacementAgentCommissions" xlink:to="lab_efoi_PaymentsForPlacementAgentCommissions" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCost_c5314473-4d2f-4d16-9cbd-3d02cbbab7b4_totalLabel_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease cost, net</link:label>
    <link:label id="lab_us-gaap_LeaseCost_label_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCost" xlink:to="lab_us-gaap_LeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingExpenses_97b21959-6a3d-4384-bad6-2a6729e0849e_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingExpenses" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total operating expenses</link:label>
    <link:label id="lab_us-gaap_OperatingExpenses_label_en-US" xlink:label="lab_us-gaap_OperatingExpenses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Expenses</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingExpenses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingExpenses" xlink:to="lab_us-gaap_OperatingExpenses" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_d5aede5f-af2d-4acd-9da9-d4ba5e1321be_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercisable at period end (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_5837d7aa-6f58-4a35-a140-94be8850749e_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, par value (in usd per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsOfDebtExtinguishmentCosts_59aabe85-9c4d-424f-a64e-69412b4c5c14_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfDebtExtinguishmentCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment to close Austin credit facility</link:label>
    <link:label id="lab_us-gaap_PaymentsOfDebtExtinguishmentCosts_label_en-US" xlink:label="lab_us-gaap_PaymentsOfDebtExtinguishmentCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment for Debt Extinguishment or Debt Prepayment Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDebtExtinguishmentCosts" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsOfDebtExtinguishmentCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfDebtExtinguishmentCosts" xlink:to="lab_us-gaap_PaymentsOfDebtExtinguishmentCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_3689e756-b544-4a93-aa17-d3bd12e16aa8_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2023 to March 2024</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due in Rolling Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations_889f9256-a2e9-41ea-81ee-bc8ff6dc84fe_terseLabel_en-US" xlink:label="lab_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax assets, operating loss carryforwards, portion available after application of IRC Section 382 limitations</link:label>
    <link:label id="lab_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations_label_en-US" xlink:label="lab_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Operating Loss Carryforwards, Portion Available After Application Of IRC Section 382 Limitations</link:label>
    <link:label id="lab_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations_documentation_en-US" xlink:label="lab_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Operating Loss Carryforwards, Portion Available After Application Of IRC Section 382 Limitations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations" xlink:href="efoi-20210331.xsd#efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations" xlink:to="lab_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease_c74c5d34-25e7-49cf-8684-083cb60cbff0_terseLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to existing warranties</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard Product Warranty Accrual, Increase (Decrease) for Preexisting Warranties</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:to="lab_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_InventoryValuationReservesProvisionAccrual_a9fd5f87-f4fc-437d-b9aa-6358af36bb2b_terseLabel_en-US" xlink:label="lab_efoi_InventoryValuationReservesProvisionAccrual" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrual</link:label>
    <link:label id="lab_efoi_InventoryValuationReservesProvisionAccrual_label_en-US" xlink:label="lab_efoi_InventoryValuationReservesProvisionAccrual" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Valuation Reserves, Provision (Accrual)</link:label>
    <link:label id="lab_efoi_InventoryValuationReservesProvisionAccrual_documentation_en-US" xlink:label="lab_efoi_InventoryValuationReservesProvisionAccrual" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Valuation Reserves, Provision (Accrual)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesProvisionAccrual" xlink:href="efoi-20210331.xsd#efoi_InventoryValuationReservesProvisionAccrual"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_InventoryValuationReservesProvisionAccrual" xlink:to="lab_efoi_InventoryValuationReservesProvisionAccrual" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeasePrincipalPayments_3f5891b5-4e5f-45dc-b278-86c143a3fd6d_negatedLabel_en-US" xlink:label="lab_us-gaap_FinanceLeasePrincipalPayments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Principal payments under finance lease obligations</link:label>
    <link:label id="lab_us-gaap_FinanceLeasePrincipalPayments_a5e5353e-141f-4a6a-9dd2-b53ce4a5bf65_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeasePrincipalPayments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financing cash flows from finance leases</link:label>
    <link:label id="lab_us-gaap_FinanceLeasePrincipalPayments_label_en-US" xlink:label="lab_us-gaap_FinanceLeasePrincipalPayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Principal Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeasePrincipalPayments" xlink:to="lab_us-gaap_FinanceLeasePrincipalPayments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryNet_7fa21c34-cf9b-4de4-9b86-c67843a18cbf_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories, net</link:label>
    <link:label id="lab_us-gaap_InventoryNet_c19a7dbd-9001-4b6a-b498-e07bfadadab4_totalLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories, net</link:label>
    <link:label id="lab_us-gaap_InventoryNet_label_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet" xlink:to="lab_us-gaap_InventoryNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementFrequencyDomain_5977b08f-fc85-4228-8564-ef97199fb260_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementFrequencyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Frequency [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementFrequencyDomain_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementFrequencyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Frequency [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain" xlink:to="lab_us-gaap_FairValueMeasurementFrequencyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_bf1cc770-c568-489f-bb28-c140275450dd_terseLabel_en-US" xlink:label="lab_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases</link:label>
    <link:label id="lab_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_label_en-US" xlink:label="lab_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Operating Lease Liabilities, Payments, Due, Rolling Maturity [Abstract]</link:label>
    <link:label id="lab_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_documentation_en-US" xlink:label="lab_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Operating Lease Liabilities, Payments, Due, Rolling Maturity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" xlink:to="lab_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharePrice_116b3cd2-8448-4fdc-90ab-18c01ecf1c58_terseLabel_en-US" xlink:label="lab_us-gaap_SharePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair value of options issued (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_SharePrice_label_en-US" xlink:label="lab_us-gaap_SharePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharePrice" xlink:to="lab_us-gaap_SharePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskPercentage1_f6787600-053f-4b83-9de2-9d52c28c1dff_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration risk</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskPercentage1_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskPercentage1" xlink:to="lab_us-gaap_ConcentrationRiskPercentage1" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_2a15c0b0-c358-403f-9c04-87e95f4decf0_terseLabel_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2022 to March 2023</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_label_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Two</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_documentation_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due in Rolling Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:to="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_SegmentGeographicalDomain_6b094e03-12d1-44c8-86b9-61ab4e3bebc7_terseLabel_en-US" xlink:label="lab_srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:label id="lab_srt_SegmentGeographicalDomain_label_en-US" xlink:label="lab_srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_SegmentGeographicalDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_SegmentGeographicalDomain" xlink:to="lab_srt_SegmentGeographicalDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermPurchaseCommitmentAmount_02fcb866-33e4-4de5-b71d-76e35cd9e07c_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermPurchaseCommitmentAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase commitment</link:label>
    <link:label id="lab_us-gaap_LongTermPurchaseCommitmentAmount_label_en-US" xlink:label="lab_us-gaap_LongTermPurchaseCommitmentAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Purchase Commitment, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermPurchaseCommitmentAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentAmount" xlink:to="lab_us-gaap_LongTermPurchaseCommitmentAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementLineItems_cf063a82-d94f-4e28-8db1-0604c333fa49_terseLabel_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:label id="lab_us-gaap_StatementLineItems_label_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems" xlink:to="lab_us-gaap_StatementLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember_63a3016f-ec7a-4c4b-ac02-ccae32fe388f_terseLabel_en-US" xlink:label="lab_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Distributor To The U.S. Navy Combined With Sales To Shipbuilders</link:label>
    <link:label id="lab_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember_label_en-US" xlink:label="lab_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Distributor To The U.S. Navy Combined With Sales To Shipbuilders [Member]</link:label>
    <link:label id="lab_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember_documentation_en-US" xlink:label="lab_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Distributor To The U.S. Navy Combined With Sales To Shipbuilders</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember" xlink:href="efoi-20210331.xsd#efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember" xlink:to="lab_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ScenarioForecastMember_31a73125-577a-439d-a713-9031acdaf132_terseLabel_en-US" xlink:label="lab_srt_ScenarioForecastMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario, Forecast</link:label>
    <link:label id="lab_srt_ScenarioForecastMember_label_en-US" xlink:label="lab_srt_ScenarioForecastMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forecast [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScenarioForecastMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ScenarioForecastMember" xlink:to="lab_srt_ScenarioForecastMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ClassOfStockDomain_03bf3a7a-165e-4033-a854-27356b9f6970_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfStockDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:label id="lab_us-gaap_ClassOfStockDomain_label_en-US" xlink:label="lab_us-gaap_ClassOfStockDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockDomain" xlink:to="lab_us-gaap_ClassOfStockDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_cd76257c-ed63-4a00-88e4-611d8e8e2887_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net loss per common share - basic and diluted</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_18b53bb3-ca88-4928-869c-e10bcd9a414a_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Denominator:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Basic and Diluted [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareBasicAndDilutedAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:to="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementTable_5e934f04-d4d5-4fb4-be95-084433727be9_terseLabel_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Table]</link:label>
    <link:label id="lab_us-gaap_StatementTable_label_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable" xlink:to="lab_us-gaap_StatementTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_4497b477-31c9-4c59-a60a-8eb8fbde5e5e_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment Effects on Earnings Per Share [Line Items]</link:label>
    <link:label id="lab_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_label_en-US" xlink:label="lab_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment Effects on Earnings Per Share [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems" xlink:to="lab_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StandardProductWarrantyPolicy_def50044-d084-478c-aef8-8e4199d4bc9c_terseLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product warranties</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyPolicy_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard Product Warranty, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyPolicy" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StandardProductWarrantyPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyPolicy" xlink:to="lab_us-gaap_StandardProductWarrantyPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TypeOfRestructuringDomain_c9a25993-4d02-4ae9-93f8-4958a7e0292b_terseLabel_en-US" xlink:label="lab_us-gaap_TypeOfRestructuringDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Type of Restructuring [Domain]</link:label>
    <link:label id="lab_us-gaap_TypeOfRestructuringDomain_label_en-US" xlink:label="lab_us-gaap_TypeOfRestructuringDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Type of Restructuring [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfRestructuringDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TypeOfRestructuringDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TypeOfRestructuringDomain" xlink:to="lab_us-gaap_TypeOfRestructuringDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeAxis_81897c59-d18a-4b9b-a551-bc65e5f29230_terseLabel_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:label id="lab_srt_RangeAxis_label_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis" xlink:to="lab_srt_RangeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityAxis_516ee0e3-33cb-4d93-a2d7-0bb2ca83a393_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:label id="lab_us-gaap_CreditFacilityAxis_label_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityAxis" xlink:to="lab_us-gaap_CreditFacilityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_6ebc6fac-720b-4877-9efe-808373ecc213_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Leases</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Payment, Due, Rolling Maturity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" xlink:to="lab_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_2e3d89cb-3bdb-4e89-8c20-ece645529a3d_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, issued (in shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesIssued" xlink:to="lab_us-gaap_PreferredStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeasesOperatingLeasePayments_befafd6d-0889-47d7-bc5f-425765d407da_terseLabel_en-US" xlink:label="lab_efoi_RestructuredLeasesOperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating cash flows from restructured leases</link:label>
    <link:label id="lab_efoi_RestructuredLeasesOperatingLeasePayments_label_en-US" xlink:label="lab_efoi_RestructuredLeasesOperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Operating Lease, Payments</link:label>
    <link:label id="lab_efoi_RestructuredLeasesOperatingLeasePayments_documentation_en-US" xlink:label="lab_efoi_RestructuredLeasesOperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Operating Lease, Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesOperatingLeasePayments" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesOperatingLeasePayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeasesOperatingLeasePayments" xlink:to="lab_efoi_RestructuredLeasesOperatingLeasePayments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TextBlockAbstract_label_en-US" xlink:label="lab_us-gaap_TextBlockAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Text Block [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TextBlockAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TextBlockAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TextBlockAbstract" xlink:to="lab_us-gaap_TextBlockAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived_5f8543e3-ebcc-4813-ab19-b6c025ada6aa_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total future undiscounted lease payments</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceived"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceived" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm_d614cfe8-96b2-4905-9750-5e2b9c4a0813_terseLabel_en-US" xlink:label="lab_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured lease, weighted average remaining lease term</link:label>
    <link:label id="lab_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm_label_en-US" xlink:label="lab_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:label id="lab_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm_documentation_en-US" xlink:label="lab_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm" xlink:to="lab_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromLoanOriginations1_701be27c-4f64-44cc-aa94-e351c17a74af_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromLoanOriginations1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from loan origination</link:label>
    <link:label id="lab_us-gaap_ProceedsFromLoanOriginations1_label_en-US" xlink:label="lab_us-gaap_ProceedsFromLoanOriginations1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Loan Originations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromLoanOriginations1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromLoanOriginations1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromLoanOriginations1" xlink:to="lab_us-gaap_ProceedsFromLoanOriginations1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_f8982cee-937d-4776-a926-1f2ec24c2ecf_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercise price of common stock (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_5233ff25-03df-4ba0-80ee-92101b743874_verboseLabel_en-US" xlink:label="lab_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercise Price (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_label_en-US" xlink:label="lab_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Warrant or Right, Exercise Price of Warrants or Rights</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:to="lab_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive_1d5c9bf7-581c-41ec-8ae1-8ad736d5400b_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2025 to March 2026</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Payments, Due in Rolling Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringAndRelatedActivitiesAbstract_b5746dd3-f09e-43e5-86b2-e9fb45799ef2_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring and Related Activities [Abstract]</link:label>
    <link:label id="lab_us-gaap_RestructuringAndRelatedActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring and Related Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:to="lab_us-gaap_RestructuringAndRelatedActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_StandardProductWarrantyNumberofYears_267591e4-8ef4-464a-825a-e35ce8e10dba_terseLabel_en-US" xlink:label="lab_efoi_StandardProductWarrantyNumberofYears" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warranty service periods</link:label>
    <link:label id="lab_efoi_StandardProductWarrantyNumberofYears_label_en-US" xlink:label="lab_efoi_StandardProductWarrantyNumberofYears" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard Product Warranty, Number of Years</link:label>
    <link:label id="lab_efoi_StandardProductWarrantyNumberofYears_documentation_en-US" xlink:label="lab_efoi_StandardProductWarrantyNumberofYears" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard Product Warranty, Number of Years</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StandardProductWarrantyNumberofYears" xlink:href="efoi-20210331.xsd#efoi_StandardProductWarrantyNumberofYears"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_StandardProductWarrantyNumberofYears" xlink:to="lab_efoi_StandardProductWarrantyNumberofYears" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_LesseeOperatingLeaseInterestRateEffectiveRate_ed23041a-3d95-4dcd-b811-929cb4089419_terseLabel_en-US" xlink:label="lab_efoi_LesseeOperatingLeaseInterestRateEffectiveRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease, borrowing rate</link:label>
    <link:label id="lab_efoi_LesseeOperatingLeaseInterestRateEffectiveRate_label_en-US" xlink:label="lab_efoi_LesseeOperatingLeaseInterestRateEffectiveRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Interest Rate, Effective Rate</link:label>
    <link:label id="lab_efoi_LesseeOperatingLeaseInterestRateEffectiveRate_documentation_en-US" xlink:label="lab_efoi_LesseeOperatingLeaseInterestRateEffectiveRate" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Interest Rate, Effective Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LesseeOperatingLeaseInterestRateEffectiveRate" xlink:href="efoi-20210331.xsd#efoi_LesseeOperatingLeaseInterestRateEffectiveRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LesseeOperatingLeaseInterestRateEffectiveRate" xlink:to="lab_efoi_LesseeOperatingLeaseInterestRateEffectiveRate" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntitySmallBusiness_f8cdde9c-4a22-485d-8774-eac7e92e8752_terseLabel_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Small Business</link:label>
    <link:label id="lab_dei_EntitySmallBusiness_label_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Small Business</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntitySmallBusiness"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntitySmallBusiness" xlink:to="lab_dei_EntitySmallBusiness" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases_0784e17d-99f3-4af3-a027-b485b56d4e7f_totalLabel_en-US" xlink:label="lab_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease right-of-use assets, total</link:label>
    <link:label id="lab_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases_label_en-US" xlink:label="lab_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Right-of-Use Asset, Including Restructured Leases</link:label>
    <link:label id="lab_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases_documentation_en-US" xlink:label="lab_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Right-of-Use Asset, Including Restructured Leases</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases" xlink:to="lab_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption_492b747b-93f6-41e0-924a-3f8881ef8e38_terseLabel_en-US" xlink:label="lab_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage increase due to deferral of redemption option</link:label>
    <link:label id="lab_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption_label_en-US" xlink:label="lab_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Note Payable, Percentage Increase Due to Deferral of Redemption Option</link:label>
    <link:label id="lab_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption_documentation_en-US" xlink:label="lab_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Note Payable, Percentage Increase Due to Deferral of Redemption Option</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" xlink:href="efoi-20210331.xsd#efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" xlink:to="lab_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f2cc898-c4d7-43cd-999f-a86b76c9f4ef_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_758a1288-53c4-4a37-b6f5-01484704eb7d_terseLabel_en-US" xlink:label="lab_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale of common stock (in shares)</link:label>
    <link:label id="lab_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_label_en-US" xlink:label="lab_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale of Stock, Number of Shares Issued in Transaction</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction" xlink:to="lab_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnamortizedDebtIssuanceExpense_a6b474fd-2b43-4c69-951f-aff3212038b7_terseLabel_en-US" xlink:label="lab_us-gaap_UnamortizedDebtIssuanceExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortized net issuance costs</link:label>
    <link:label id="lab_us-gaap_UnamortizedDebtIssuanceExpense_label_en-US" xlink:label="lab_us-gaap_UnamortizedDebtIssuanceExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unamortized Debt Issuance Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnamortizedDebtIssuanceExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UnamortizedDebtIssuanceExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnamortizedDebtIssuanceExpense" xlink:to="lab_us-gaap_UnamortizedDebtIssuanceExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtDisclosureTextBlock_07403866-7bfe-4bd1-8e83-84dfe023f937_terseLabel_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt</link:label>
    <link:label id="lab_us-gaap_DebtDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureTextBlock" xlink:to="lab_us-gaap_DebtDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_efaf8c23-2b63-49c9-bcc3-b5a27d204d9b_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_bc77c4d4-c112-4608-9a1d-fca4fb2c0130_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercisable at period end</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentRedemptionPeriodOneMember_14dac845-c0b6-4c7e-a9f5-1db7ae2a73f4_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPeriodOneMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Redemption, Period One</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentRedemptionPeriodOneMember_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPeriodOneMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Redemption, Period One [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodOneMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodOneMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodOneMember" xlink:to="lab_us-gaap_DebtInstrumentRedemptionPeriodOneMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_e26ae023-d6fa-4132-97ff-b19e30d89f6e_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, general, and administrative</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, General and Administrative Expenses [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentFlag_ed07c8cc-763e-4246-9274-a6fc8e5b77d2_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amendment Flag</link:label>
    <link:label id="lab_dei_AmendmentFlag_label_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_AmendmentFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag" xlink:to="lab_dei_AmendmentFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_90c49890-4482-4f79-811a-0985428618a8_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reconciliation of basic and diluted income (loss) per share</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_e2e6d677-e7cb-48c0-8bed-a76e07a2437f_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average shares of common stock outstanding:</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeFinanceLeasesTextBlock_70fc0a61-3312-40bf-9245-2830344f00b1_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeFinanceLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases</link:label>
    <link:label id="lab_us-gaap_LesseeFinanceLeasesTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeFinanceLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Finance Leases [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeFinanceLeasesTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeFinanceLeasesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeFinanceLeasesTextBlock" xlink:to="lab_us-gaap_LesseeFinanceLeasesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_InventoryFacilityMember_d6f3506a-2bc5-484e-b93f-5c453b75fe2e_terseLabel_en-US" xlink:label="lab_efoi_InventoryFacilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Facility</link:label>
    <link:label id="lab_efoi_InventoryFacilityMember_label_en-US" xlink:label="lab_efoi_InventoryFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Facility [Member]</link:label>
    <link:label id="lab_efoi_InventoryFacilityMember_documentation_en-US" xlink:label="lab_efoi_InventoryFacilityMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Facility</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryFacilityMember" xlink:href="efoi-20210331.xsd#efoi_InventoryFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_InventoryFacilityMember" xlink:to="lab_efoi_InventoryFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_3aa80c52-e19f-4452-8082-1587b2368ee6_terseLabel_en-US" xlink:label="lab_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase price (in usd per share)</link:label>
    <link:label id="lab_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_label_en-US" xlink:label="lab_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class Of Warrant Or Right, Warrants Issued, Price Per Share</link:label>
    <link:label id="lab_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_documentation_en-US" xlink:label="lab_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class Of Warrant Or Right, Warrants Issued, Price Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare" xlink:to="lab_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_d25059a8-835f-4ee0-b6b5-8e08fbdcf4d6_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued liabilities</link:label>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Accrued Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyLiabilityLineItems_ed43f13f-7b83-4cd5-ae3e-e2fb3ed14110_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyLiabilityLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranty Liability [Line Items]</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyLiabilityLineItems_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyLiabilityLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranty Liability [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyLiabilityLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyLiabilityLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyLiabilityLineItems" xlink:to="lab_us-gaap_ProductWarrantyLiabilityLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_a1d41f3f-9562-4970-adbe-17da1e339254_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash (used in) provided by operating activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCentralIndexKey_a89103ff-afb8-4aae-a322-f04a9834ad42_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:label id="lab_dei_EntityCentralIndexKey_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCentralIndexKey"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey" xlink:to="lab_dei_EntityCentralIndexKey" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_12228faf-2e2a-457d-85ee-691b88db90f6_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring</link:label>
    <link:label id="lab_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring and Related Activities Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:to="lab_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByMeasurementFrequencyAxis_e6e80cf4-8045-464a-9636-f201df090e69_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Frequency [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByMeasurementFrequencyAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Measurement Frequency [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:to="lab_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet_c9f8e5b7-1219-4e58-879b-d10d97919f5b_negatedLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of loan discounts and origination fees</link:label>
    <link:label id="lab_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet_label_en-US" xlink:label="lab_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of Deferred Loan Origination Fees, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AmortizationOfDeferredLoanOriginationFeesNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet" xlink:to="lab_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_StatementGeographicalAxis_e86d1a80-c450-475e-b620-01daf046976e_terseLabel_en-US" xlink:label="lab_srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:label id="lab_srt_StatementGeographicalAxis_label_en-US" xlink:label="lab_srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_StatementGeographicalAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementGeographicalAxis" xlink:to="lab_srt_StatementGeographicalAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_999fce82-967e-4020-a8a0-916d0d0e292c_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events</link:label>
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsTextBlock" xlink:to="lab_us-gaap_SubsequentEventsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract_221c5319-bb0b-45b2-8797-2d9995d90219_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Payment, Due, Rolling Maturity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract" xlink:to="lab_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAdjustmentOfWarrants_ac2bbb04-19f0-4e8c-afef-8b6ced063d66_verboseLabel_en-US" xlink:label="lab_us-gaap_FairValueAdjustmentOfWarrants" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gain from change in fair value of warrants</link:label>
    <link:label id="lab_us-gaap_FairValueAdjustmentOfWarrants_41d1f564-b73f-454e-ae81-701d2f6011e1_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAdjustmentOfWarrants" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Change in fair value of warrant liabilities</link:label>
    <link:label id="lab_us-gaap_FairValueAdjustmentOfWarrants_label_en-US" xlink:label="lab_us-gaap_FairValueAdjustmentOfWarrants" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Adjustment of Warrants</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAdjustmentOfWarrants" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAdjustmentOfWarrants"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAdjustmentOfWarrants" xlink:to="lab_us-gaap_FairValueAdjustmentOfWarrants" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_d883d1ce-184b-4b80-8780-94a2af9acb30_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_3f784541-99f9-46a2-a228-7fde01fe94b4_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Lived Tangible Asset [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_93a23b53-9fa9-4ee8-a57f-3182ed06eab8_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of restricted stock activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_4aee87b4-5aa9-41bf-9326-820e4f820714_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis" xlink:to="lab_us-gaap_IncomeStatementLocationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_0e86f838-7cbe-4f3c-9f3d-84059ac833dc_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trade accounts receivable, less allowances</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DepositsAssetsCurrent_85bd7218-6306-4ff8-b6ad-2fc1c72f1451_terseLabel_en-US" xlink:label="lab_us-gaap_DepositsAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term deposits</link:label>
    <link:label id="lab_us-gaap_DepositsAssetsCurrent_label_en-US" xlink:label="lab_us-gaap_DepositsAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deposits Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepositsAssetsCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DepositsAssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepositsAssetsCurrent" xlink:to="lab_us-gaap_DepositsAssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_7b3d339e-6d9b-4a8f-9949-80b6397e64c3_terseLabel_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_label_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding" xlink:to="lab_dei_EntityCommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_90eca386-c60e-4a64-bc3a-122b17627b04_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain" xlink:to="lab_us-gaap_IncomeStatementLocationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_babc6af1-9f9b-4b44-8ba9-e0dbc551dc57_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock-based compensation</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">APIC, Share-based Payment Arrangement, Option, Increase for Cost Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DSeriesLampsMember_16be0581-72b3-4fa8-b7e7-5a061f8545c1_terseLabel_en-US" xlink:label="lab_efoi_DSeriesLampsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">D-Series Lamps</link:label>
    <link:label id="lab_efoi_DSeriesLampsMember_label_en-US" xlink:label="lab_efoi_DSeriesLampsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">D-Series Lamps [Member]</link:label>
    <link:label id="lab_efoi_DSeriesLampsMember_documentation_en-US" xlink:label="lab_efoi_DSeriesLampsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">D-Series Lamps</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DSeriesLampsMember" xlink:href="efoi-20210331.xsd#efoi_DSeriesLampsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DSeriesLampsMember" xlink:to="lab_efoi_DSeriesLampsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StateAndLocalJurisdictionMember_b9fd9322-e900-4943-8288-526ba46a3cef_terseLabel_en-US" xlink:label="lab_us-gaap_StateAndLocalJurisdictionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State and Local Jurisdiction</link:label>
    <link:label id="lab_us-gaap_StateAndLocalJurisdictionMember_label_en-US" xlink:label="lab_us-gaap_StateAndLocalJurisdictionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">State and Local Jurisdiction [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StateAndLocalJurisdictionMember" xlink:to="lab_us-gaap_StateAndLocalJurisdictionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d9a72d58-2448-4f1b-a00a-3dd135ab94c2_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flows from financing activities (Sources / (Uses) of cash):</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_LineOfCreditFacilityCollateralManagementFee_fc24ed8e-cf70-469c-bfc0-14004d8ce793_terseLabel_en-US" xlink:label="lab_efoi_LineOfCreditFacilityCollateralManagementFee" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Collateral management fee</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityCollateralManagementFee_label_en-US" xlink:label="lab_efoi_LineOfCreditFacilityCollateralManagementFee" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Collateral Management Fee</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityCollateralManagementFee_documentation_en-US" xlink:label="lab_efoi_LineOfCreditFacilityCollateralManagementFee" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Collateral Management Fee</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityCollateralManagementFee" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityCollateralManagementFee"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LineOfCreditFacilityCollateralManagementFee" xlink:to="lab_efoi_LineOfCreditFacilityCollateralManagementFee" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_d8323872-f578-45e0-a20e-1e28bfff0112_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, general, and administrative</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, General and Administrative Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityNoteAbstract_0eac2f8a-7283-4702-ab46-17aedd60298f_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Note [Abstract]</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityNoteAbstract_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Note [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract" xlink:to="lab_us-gaap_StockholdersEquityNoteAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityTable_12b64a9c-98b2-4be1-84d6-588628f517cb_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility [Table]</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityTable_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityTable" xlink:to="lab_us-gaap_LineOfCreditFacilityTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_38d5002b-9410-40b7-8163-51780e46d2bc_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Components of Lease Cost and Supplemental Cash Flow Information</link:label>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCostTableTextBlock" xlink:to="lab_us-gaap_LeaseCostTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_e76dae7d-19bd-4cc0-adbf-d87e27510b55_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplier [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_label_en-US" xlink:label="lab_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplier [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:to="lab_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueNewIssues_2f7e81de-cccb-44ad-920f-77a6fc8041bb_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock upon the exercise of warrants</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueNewIssues_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Value, New Issues</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueNewIssues" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskTable_9f772a92-3a1f-4aed-8bb6-c8ee939d54d4_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk [Table]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskTable_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskTable" xlink:to="lab_us-gaap_ConcentrationRiskTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperations_310748e0-daed-42b4-ab55-4d02bcc82159_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net loss from continuing operations</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperations_bbd6c9cb-46d6-4a29-8146-49846e9cd707_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net loss</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperations_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Continuing Operations, Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperations" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Assets_50e76426-64d6-4763-8974-353d69beb5c5_totalLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_label_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Assets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets" xlink:to="lab_us-gaap_Assets" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_StatementScenarioAxis_eb41da13-8535-48cc-8534-b293c524e9b5_terseLabel_en-US" xlink:label="lab_srt_StatementScenarioAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Axis]</link:label>
    <link:label id="lab_srt_StatementScenarioAxis_label_en-US" xlink:label="lab_srt_StatementScenarioAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_StatementScenarioAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementScenarioAxis" xlink:to="lab_srt_StatementScenarioAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues_a27b4224-71f6-4f65-8289-b97f61f47254_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of warrants, January 2020</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Issuances</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues" xlink:to="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_Security12bTitle_b6ec927b-98fd-4c73-828f-e2221addd25e_terseLabel_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:label id="lab_dei_Security12bTitle_label_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_Security12bTitle"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle" xlink:to="lab_dei_Security12bTitle" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_InstitutionalInvestorMember_3c196bfa-e32e-4d35-8792-7fd3f62508f4_terseLabel_en-US" xlink:label="lab_efoi_InstitutionalInvestorMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investor Warrants</link:label>
    <link:label id="lab_efoi_InstitutionalInvestorMember_label_en-US" xlink:label="lab_efoi_InstitutionalInvestorMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Institutional Investor [Member]</link:label>
    <link:label id="lab_efoi_InstitutionalInvestorMember_documentation_en-US" xlink:label="lab_efoi_InstitutionalInvestorMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Institutional Investor</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember" xlink:href="efoi-20210331.xsd#efoi_InstitutionalInvestorMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_InstitutionalInvestorMember" xlink:to="lab_efoi_InstitutionalInvestorMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_696e17ae-9876-483a-af5a-a2310f67690a_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeAxis" xlink:to="lab_us-gaap_SubsequentEventTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_StreetervilleNotePurchaseAgreementMember_565fd21c-22bc-4b9b-91be-a61321e3e53e_terseLabel_en-US" xlink:label="lab_efoi_StreetervilleNotePurchaseAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Streeterville Note</link:label>
    <link:label id="lab_efoi_StreetervilleNotePurchaseAgreementMember_label_en-US" xlink:label="lab_efoi_StreetervilleNotePurchaseAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Streeterville Note Purchase Agreement [Member]</link:label>
    <link:label id="lab_efoi_StreetervilleNotePurchaseAgreementMember_documentation_en-US" xlink:label="lab_efoi_StreetervilleNotePurchaseAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Streeterville Note Purchase Agreement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StreetervilleNotePurchaseAgreementMember" xlink:href="efoi-20210331.xsd#efoi_StreetervilleNotePurchaseAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_StreetervilleNotePurchaseAgreementMember" xlink:to="lab_efoi_StreetervilleNotePurchaseAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfSalesMember_12f19025-a433-4782-ac20-931fe08cc1cf_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of sales</link:label>
    <link:label id="lab_us-gaap_CostOfSalesMember_label_en-US" xlink:label="lab_us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Sales [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfSalesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfSalesMember" xlink:to="lab_us-gaap_CostOfSalesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskCreditRisk_df5fc807-bd10-4bc0-bb4c-0303810d7233_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskCreditRisk" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Certain risks and concentrations</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskCreditRisk_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskCreditRisk" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk, Credit Risk, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskCreditRisk" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskCreditRisk"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskCreditRisk" xlink:to="lab_us-gaap_ConcentrationRiskCreditRisk" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_1f10d647-e981-428e-9bc2-df74cee329b2_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Future Maturities of Finance Lease Liabilities</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Fiscal Year Maturity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:to="lab_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestExpense_b1efc9ec-de5a-4a37-a12f-7dd5803ac60b_terseLabel_en-US" xlink:label="lab_us-gaap_InterestExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest expense</link:label>
    <link:label id="lab_us-gaap_InterestExpense_label_en-US" xlink:label="lab_us-gaap_InterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestExpense" xlink:to="lab_us-gaap_InterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption_c27d0083-fa03-4846-9353-03cf131eb435_terseLabel_en-US" xlink:label="lab_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Period after issuance after which debt is subject to mandatory redemption</link:label>
    <link:label id="lab_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption_label_en-US" xlink:label="lab_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Period After Issuance After Which Is Subject To Mandatory Redemption</link:label>
    <link:label id="lab_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption_documentation_en-US" xlink:label="lab_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Period After Issuance After Which Is Subject To Mandatory Redemption</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption" xlink:to="lab_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductOrServiceAxis_b70a9ba6-8044-408b-b0e4-9e59dcf3e6ad_terseLabel_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:label id="lab_srt_ProductOrServiceAxis_label_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductOrServiceAxis" xlink:to="lab_srt_ProductOrServiceAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Liabilities_77390ad2-4a27-48a3-ada9-bb5509e4b4ea_totalLabel_en-US" xlink:label="lab_us-gaap_Liabilities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total liabilities</link:label>
    <link:label id="lab_us-gaap_Liabilities_label_en-US" xlink:label="lab_us-gaap_Liabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Liabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Liabilities" xlink:to="lab_us-gaap_Liabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_InventoryValuationReservesSalesOfInventory_be7223ee-1d4a-4e4c-9f89-dd9df9353d55_terseLabel_en-US" xlink:label="lab_efoi_InventoryValuationReservesSalesOfInventory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reduction due to sold inventory</link:label>
    <link:label id="lab_efoi_InventoryValuationReservesSalesOfInventory_label_en-US" xlink:label="lab_efoi_InventoryValuationReservesSalesOfInventory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Valuation Reserves, Sales Of Inventory</link:label>
    <link:label id="lab_efoi_InventoryValuationReservesSalesOfInventory_documentation_en-US" xlink:label="lab_efoi_InventoryValuationReservesSalesOfInventory" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Valuation Reserves, Sales Of Inventory</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesSalesOfInventory" xlink:href="efoi-20210331.xsd#efoi_InventoryValuationReservesSalesOfInventory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_InventoryValuationReservesSalesOfInventory" xlink:to="lab_efoi_InventoryValuationReservesSalesOfInventory" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_ba2ee157-6e16-4e17-970e-7e8af8da9c5b_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unearned compensation expected to be recognized, period</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_2561b8b6-50d7-43c5-a51b-ead2f94a5ef4_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expected volatility</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_ea0018a0-4997-4689-a98b-71780ca7b11a_negatedLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less imputed interest</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NonUsMember_8d1762cd-830d-4f34-b93a-fc3288a21ff0_terseLabel_en-US" xlink:label="lab_us-gaap_NonUsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Countries outside of the United States</link:label>
    <link:label id="lab_us-gaap_NonUsMember_label_en-US" xlink:label="lab_us-gaap_NonUsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-US [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonUsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NonUsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonUsMember" xlink:to="lab_us-gaap_NonUsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_95617005-dfae-4ec7-91fc-318b89451f82_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested and expected to vest at period end</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_OperatingLeaseCostNetOfSubleaseIncome_b15444ff-489b-429a-959b-188a6ad03e86_totalLabel_en-US" xlink:label="lab_efoi_OperatingLeaseCostNetOfSubleaseIncome" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease cost, net</link:label>
    <link:label id="lab_efoi_OperatingLeaseCostNetOfSubleaseIncome_label_en-US" xlink:label="lab_efoi_OperatingLeaseCostNetOfSubleaseIncome" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Cost, Net Of Sublease Income</link:label>
    <link:label id="lab_efoi_OperatingLeaseCostNetOfSubleaseIncome_documentation_en-US" xlink:label="lab_efoi_OperatingLeaseCostNetOfSubleaseIncome" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Cost, Net Of Sublease Income</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseCostNetOfSubleaseIncome"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome" xlink:to="lab_efoi_OperatingLeaseCostNetOfSubleaseIncome" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_CommercialProductsMember_f2e7d6df-efef-45e6-8124-d951e3f98178_terseLabel_en-US" xlink:label="lab_efoi_CommercialProductsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commercial</link:label>
    <link:label id="lab_efoi_CommercialProductsMember_label_en-US" xlink:label="lab_efoi_CommercialProductsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commercial Products [Member]</link:label>
    <link:label id="lab_efoi_CommercialProductsMember_documentation_en-US" xlink:label="lab_efoi_CommercialProductsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commercial Products</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialProductsMember" xlink:href="efoi-20210331.xsd#efoi_CommercialProductsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_CommercialProductsMember" xlink:to="lab_efoi_CommercialProductsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_PaycheckProtectionProgramCARESActMember_90526b75-7628-4bf7-b1aa-51abbaa7db5b_terseLabel_en-US" xlink:label="lab_efoi_PaycheckProtectionProgramCARESActMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Paycheck Protection Program</link:label>
    <link:label id="lab_efoi_PaycheckProtectionProgramCARESActMember_label_en-US" xlink:label="lab_efoi_PaycheckProtectionProgramCARESActMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Paycheck Protection Program CARES Act [Member]</link:label>
    <link:label id="lab_efoi_PaycheckProtectionProgramCARESActMember_documentation_en-US" xlink:label="lab_efoi_PaycheckProtectionProgramCARESActMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Paycheck Protection Program CARES Act</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaycheckProtectionProgramCARESActMember" xlink:href="efoi-20210331.xsd#efoi_PaycheckProtectionProgramCARESActMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PaycheckProtectionProgramCARESActMember" xlink:to="lab_efoi_PaycheckProtectionProgramCARESActMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount_0a8be326-1015-42fe-a0e0-b183ee0f4aa1_terseLabel_en-US" xlink:label="lab_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less imputed interest</link:label>
    <link:label id="lab_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount_label_en-US" xlink:label="lab_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:label id="lab_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount_documentation_en-US" xlink:label="lab_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:href="efoi-20210331.xsd#efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="lab_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_89099ab5-2f8a-4b88-9412-7f8ed5c4781c_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_5ae63158-de52-43a5-8dc8-3845768e179d_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Quoted Prices in Active Markets for Identical Assets (Level 1)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Inputs, Level 1 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel1Member" xlink:to="lab_us-gaap_FairValueInputsLevel1Member" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_8ccc35a1-8a9c-4bfc-bdd5-b5a274424706_totalLabel_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total future undiscounted lease payments</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_label_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_documentation_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_fa72c02a-64f1-4540-b719-32faac434d47_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Inventories</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInInventories" xlink:to="lab_us-gaap_IncreaseDecreaseInInventories" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_b39d7973-7569-4642-8253-3981d9113a36_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accounts Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryRawMaterialsNetOfReserves_8d9eecf7-e6d2-4974-9fb5-012e809bbdc2_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Raw materials</link:label>
    <link:label id="lab_us-gaap_InventoryRawMaterialsNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Raw Materials, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:to="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_6183b207-02a4-4784-8e0f-3c277961a407_terseLabel_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2025 to March 2026</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_label_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Five</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_documentation_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:to="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredOperatingLeaseRightOfUseAsset_0ea204fa-5318-4ebf-a59c-c41dbd9820c7_terseLabel_en-US" xlink:label="lab_efoi_RestructuredOperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured lease right-of-use assets</link:label>
    <link:label id="lab_efoi_RestructuredOperatingLeaseRightOfUseAsset_label_en-US" xlink:label="lab_efoi_RestructuredOperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Operating Lease, Right-Of-Use Asset</link:label>
    <link:label id="lab_efoi_RestructuredOperatingLeaseRightOfUseAsset_documentation_en-US" xlink:label="lab_efoi_RestructuredOperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Operating Lease, Right-Of-Use Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseRightOfUseAsset" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredOperatingLeaseRightOfUseAsset" xlink:to="lab_efoi_RestructuredOperatingLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_87c610a8-43ad-4a9c-9997-55a7f6e25841_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Axis]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentAxis" xlink:to="lab_us-gaap_DebtInstrumentAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_da42a6fd-bff1-443a-ab21-989593c3bed5_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid-in Capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ClassOfStockLineItems_6cacf906-71d1-4f52-aef1-77225d74b948_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfStockLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Line Items]</link:label>
    <link:label id="lab_us-gaap_ClassOfStockLineItems_label_en-US" xlink:label="lab_us-gaap_ClassOfStockLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockLineItems" xlink:to="lab_us-gaap_ClassOfStockLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_9e0fe76e-e5aa-4bc4-aca1-27cb1256714b_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued and other liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accrued Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_eeefde00-462d-4b1e-8e21-91e32cae7a5f_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reverse stock split ratio</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Note, Stock Split, Conversion Ratio</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteStockSplitConversionRatio1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1" xlink:to="lab_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_LineOfCreditFacilityMonthlyFacilityFee_d7280875-a12e-4645-a39b-de2f8690da28_terseLabel_en-US" xlink:label="lab_efoi_LineOfCreditFacilityMonthlyFacilityFee" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum monthly fee</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityMonthlyFacilityFee_label_en-US" xlink:label="lab_efoi_LineOfCreditFacilityMonthlyFacilityFee" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Monthly Facility Fee</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityMonthlyFacilityFee_documentation_en-US" xlink:label="lab_efoi_LineOfCreditFacilityMonthlyFacilityFee" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Monthly Facility Fee</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityMonthlyFacilityFee" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityMonthlyFacilityFee"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LineOfCreditFacilityMonthlyFacilityFee" xlink:to="lab_efoi_LineOfCreditFacilityMonthlyFacilityFee" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_752b217d-548f-47da-8fab-9c801768d9de_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to reconcile net loss to net cash used in (provided by) operating activities:</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember_8f6d6eda-2af9-49a1-b849-ca688c3d7188_terseLabel_en-US" xlink:label="lab_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LEDFL Tubular LED Lamps (Excluding Red Caps)</link:label>
    <link:label id="lab_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember_label_en-US" xlink:label="lab_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LEDFL Tubular LED Lamps (Excluding Red Caps) [Member]</link:label>
    <link:label id="lab_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember_documentation_en-US" xlink:label="lab_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LEDFL Tubular LED Lamps (Excluding Red Caps) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember" xlink:href="efoi-20210331.xsd#efoi_LEDFLTubularLEDLampsExcludingRedCapsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember" xlink:to="lab_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount_b88b7843-d55b-40bf-a246-68b169591a8c_negatedTerseLabel_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less imputed interest</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount_label_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount_documentation_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_13c9f44f-f383-4185-96e0-898d5bdc5a3b_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financial Instruments</link:label>
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_label_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value of Financial Instruments, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:to="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_6cd398f8-9680-4879-88e4-6eda51e0ebfd_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares, Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesOutstanding" xlink:to="lab_us-gaap_CommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_5890caef-8926-4a26-8deb-a19718884aed_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:to="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_BrilliantStartMember_ba049d67-e798-4797-8cf3-eefcf042adb6_terseLabel_en-US" xlink:label="lab_efoi_BrilliantStartMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Brilliant Start</link:label>
    <link:label id="lab_efoi_BrilliantStartMember_label_en-US" xlink:label="lab_efoi_BrilliantStartMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Brilliant Start [Member]</link:label>
    <link:label id="lab_efoi_BrilliantStartMember_documentation_en-US" xlink:label="lab_efoi_BrilliantStartMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Brilliant Start</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_BrilliantStartMember" xlink:href="efoi-20210331.xsd#efoi_BrilliantStartMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_BrilliantStartMember" xlink:to="lab_efoi_BrilliantStartMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevolvingCreditFacilityMember_89ba9b34-5ca4-4ccf-be4c-c749bfa92321_terseLabel_en-US" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving Credit Facility</link:label>
    <link:label id="lab_us-gaap_RevolvingCreditFacilityMember_label_en-US" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving Credit Facility [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevolvingCreditFacilityMember" xlink:to="lab_us-gaap_RevolvingCreditFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_1445403f-f2aa-4aaa-ac83-d9bf65aeb6a4_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product development</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Research and Development Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpense" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants_648fe0eb-9c8f-48dd-a0e5-940cf2561873_verboseLabel_en-US" xlink:label="lab_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock and warrants</link:label>
    <link:label id="lab_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants_label_en-US" xlink:label="lab_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock and Warrants Issued During Period, Value, Preferred Stock and Warrants</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants" xlink:to="lab_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventMember_7ca7ca30-dccb-4afe-b5d1-42b3610685f8_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event</link:label>
    <link:label id="lab_us-gaap_SubsequentEventMember_label_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventMember" xlink:to="lab_us-gaap_SubsequentEventMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_ec599b28-34ab-4a82-a601-9b50d4ca2a6e_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding at beginning of period (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_59ba66ba-69fa-408c-855f-4a76235d1166_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding at end of period (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DomesticCountryMember_71449f09-4963-4482-bb64-b74bec2e73a0_terseLabel_en-US" xlink:label="lab_us-gaap_DomesticCountryMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">U.S. Federal, State and Local tax authorities</link:label>
    <link:label id="lab_us-gaap_DomesticCountryMember_label_en-US" xlink:label="lab_us-gaap_DomesticCountryMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Domestic Tax Authority [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DomesticCountryMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DomesticCountryMember" xlink:to="lab_us-gaap_DomesticCountryMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_02f232c0-5967-4e20-ac55-b45789da3fe7_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, authorized (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized" xlink:to="lab_us-gaap_CommonStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskByTypeAxis_19ab71f6-4e2a-493e-a4f7-dfc66895f0d0_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskByTypeAxis_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis" xlink:to="lab_us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_08782052-9e9a-4df4-b875-437eeb495f3b_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment at cost</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringPlanDomain_199a7577-b7a2-49f4-ae7e-49a0b21a0687_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringPlanDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Plan [Domain]</link:label>
    <link:label id="lab_us-gaap_RestructuringPlanDomain_label_en-US" xlink:label="lab_us-gaap_RestructuringPlanDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Plan [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringPlanDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringPlanDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringPlanDomain" xlink:to="lab_us-gaap_RestructuringPlanDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueRecognitionPolicyTextBlock_b643997d-327d-4772-b23a-93be76da2bc0_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueRecognitionPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_RevenueRecognitionPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_RevenueRecognitionPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRecognitionPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRecognitionPolicyTextBlock" xlink:to="lab_us-gaap_RevenueRecognitionPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredOperatingLeaseLiability_a4b8e23a-9725-4476-87d7-a70beab35ff1_terseLabel_en-US" xlink:label="lab_efoi_RestructuredOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured lease liabilities</link:label>
    <link:label id="lab_efoi_RestructuredOperatingLeaseLiability_a901eb3a-6eba-4173-b4b1-0bc9e1b8ed8e_verboseLabel_en-US" xlink:label="lab_efoi_RestructuredOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease obligations</link:label>
    <link:label id="lab_efoi_RestructuredOperatingLeaseLiability_label_en-US" xlink:label="lab_efoi_RestructuredOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Operating Lease, Liability</link:label>
    <link:label id="lab_efoi_RestructuredOperatingLeaseLiability_documentation_en-US" xlink:label="lab_efoi_RestructuredOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Operating Lease, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseLiability" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredOperatingLeaseLiability" xlink:to="lab_efoi_RestructuredOperatingLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_0a370f3c-4bc4-4f16-936f-b0db712ced80_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract" xlink:to="lab_us-gaap_IncomeStatementAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_1d6a2e18-9b58-4fb4-aaff-13d21976fe2f_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Loss</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_1ecf56ab-bbf7-40f6-a2e3-ea15df8948c8_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease liabilities, net of current portion</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_11eb5873-5357-4811-9d31-ec60ad0afe03_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid and other assets</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_1ed6f8d6-f506-4a3b-a42d-a873893459f8_terseLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warranty accruals for current period sales</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard Product Warranty Accrual, Increase for Warranties Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StandardProductWarrantyAccrualWarrantiesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:to="lab_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_7d884a23-1b28-46d3-bf82-a908654104df_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unamortized issuance costs at date of issuance</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Unamortized Discount (Premium) and Debt Issuance Costs, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" xlink:to="lab_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UseOfEstimates_7df4c5eb-1057-4a23-86b5-101665bf7253_terseLabel_en-US" xlink:label="lab_us-gaap_UseOfEstimates" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Use of estimates</link:label>
    <link:label id="lab_us-gaap_UseOfEstimates_label_en-US" xlink:label="lab_us-gaap_UseOfEstimates" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Use of Estimates, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UseOfEstimates" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UseOfEstimates"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UseOfEstimates" xlink:to="lab_us-gaap_UseOfEstimates" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt_21e6286a-5ad5-4372-a3f1-42797259d559_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from issuance of subordinated convertible promissory notes</link:label>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt_label_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Issuance of Subordinated Long-term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_6cadb7b2-6efe-4b06-876e-311bb0f16dde_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current assets:</link:label>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract" xlink:to="lab_us-gaap_AssetsCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_a2193616-947b-41b5-974d-bad213e6d042_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Authority [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Authority [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain" xlink:to="lab_us-gaap_IncomeTaxAuthorityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_83f10612-5fcb-4c66-b697-9e7635ae2e3b_terseLabel_en-US" xlink:label="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Computer software</link:label>
    <link:label id="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_label_en-US" xlink:label="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Software and Software Development Costs [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:to="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuringReserveAccretion_c4c5b46d-9193-4f98-b466-69f1d9cc719b_terseLabel_en-US" xlink:label="lab_efoi_RestructuringReserveAccretion" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accretion of lease obligations</link:label>
    <link:label id="lab_efoi_RestructuringReserveAccretion_label_en-US" xlink:label="lab_efoi_RestructuringReserveAccretion" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Reserve, Accretion</link:label>
    <link:label id="lab_efoi_RestructuringReserveAccretion_documentation_en-US" xlink:label="lab_efoi_RestructuringReserveAccretion" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Reserve, Accretion</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuringReserveAccretion" xlink:href="efoi-20210331.xsd#efoi_RestructuringReserveAccretion"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuringReserveAccretion" xlink:to="lab_efoi_RestructuringReserveAccretion" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_ab12dbaa-214e-428f-98d3-34080d8920a9_totalLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Comprehensive loss</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_c8e0bece-7131-4ea9-a65d-60850d9dfa4e_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividend yield</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_946bb7cf-dbd1-4123-a757-e1f884c07558_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, par value (in usd per share)</link:label>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_ClassOfWarrantOrRightWarrantsIssued_5f36b331-2624-42f9-a688-30b5046dceb5_terseLabel_en-US" xlink:label="lab_efoi_ClassOfWarrantOrRightWarrantsIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warrants issued (in shares)</link:label>
    <link:label id="lab_efoi_ClassOfWarrantOrRightWarrantsIssued_3828404c-d783-4370-a123-3a7b8a3ddd0d_verboseLabel_en-US" xlink:label="lab_efoi_ClassOfWarrantOrRightWarrantsIssued" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Underlying Shares (in shares)</link:label>
    <link:label id="lab_efoi_ClassOfWarrantOrRightWarrantsIssued_label_en-US" xlink:label="lab_efoi_ClassOfWarrantOrRightWarrantsIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class Of Warrant Or Right, Warrants Issued</link:label>
    <link:label id="lab_efoi_ClassOfWarrantOrRightWarrantsIssued_documentation_en-US" xlink:label="lab_efoi_ClassOfWarrantOrRightWarrantsIssued" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class Of Warrant Or Right, Warrants Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_ClassOfWarrantOrRightWarrantsIssued" xlink:to="lab_efoi_ClassOfWarrantOrRightWarrantsIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee_b8ae9d67-4714-460f-9064-0a7546797a0a_terseLabel_en-US" xlink:label="lab_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stated interest rate on collateral management fee</link:label>
    <link:label id="lab_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee_label_en-US" xlink:label="lab_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage, Collateral Management Fee</link:label>
    <link:label id="lab_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee_documentation_en-US" xlink:label="lab_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage, Collateral Management Fee</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" xlink:to="lab_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringReserveRollForward_d471bfad-2f56-4078-825d-a31a5417dae8_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringReserveRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Reserve [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_RestructuringReserveRollForward_label_en-US" xlink:label="lab_us-gaap_RestructuringReserveRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Reserve [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserveRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringReserveRollForward" xlink:to="lab_us-gaap_RestructuringReserveRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ScenarioUnspecifiedDomain_4c7c5bf9-c8a3-4359-a2d1-f442e2b0a717_terseLabel_en-US" xlink:label="lab_srt_ScenarioUnspecifiedDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Domain]</link:label>
    <link:label id="lab_srt_ScenarioUnspecifiedDomain_label_en-US" xlink:label="lab_srt_ScenarioUnspecifiedDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Scenario [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ScenarioUnspecifiedDomain" xlink:to="lab_srt_ScenarioUnspecifiedDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RepurchaseAgreementCounterpartyNameDomain_8e670f17-40a6-42ae-9b67-1d8f5d8acbf7_terseLabel_en-US" xlink:label="lab_srt_RepurchaseAgreementCounterpartyNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Counterparty Name [Domain]</link:label>
    <link:label id="lab_srt_RepurchaseAgreementCounterpartyNameDomain_label_en-US" xlink:label="lab_srt_RepurchaseAgreementCounterpartyNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Counterparty Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RepurchaseAgreementCounterpartyNameDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RepurchaseAgreementCounterpartyNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RepurchaseAgreementCounterpartyNameDomain" xlink:to="lab_srt_RepurchaseAgreementCounterpartyNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_1359d24f-402f-4e05-8065-34f2ab29620a_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Acquisitions of property and equipment</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CityAreaCode_7c0abfe7-f69f-48eb-97de-8acf452d5341_terseLabel_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">City Area Code</link:label>
    <link:label id="lab_dei_CityAreaCode_label_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CityAreaCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode" xlink:to="lab_dei_CityAreaCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths_bb2da240-3343-4590-a384-bdc113618c4b_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2021 to March 2022</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received, Next Rolling Twelve Months</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_a28e930a-a392-4e33-b01e-51d1582380ac_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Authority [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Authority [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis" xlink:to="lab_us-gaap_IncomeTaxAuthorityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentPeriodEndDate_d7174045-6c73-4417-b2c8-42d74eb98817_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Period End Date</link:label>
    <link:label id="lab_dei_DocumentPeriodEndDate_label_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentPeriodEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate" xlink:to="lab_dei_DocumentPeriodEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAbstract_57450ae3-73c7-4af9-8a44-fa046e60bcaa_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAbstract_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_5e6e15d7-75b5-43f8-bbc1-72892177f92f_terseLabel_en-US" xlink:label="lab_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock issued upon preferred stock conversion (in shares)</link:label>
    <link:label id="lab_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_label_en-US" xlink:label="lab_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Convertible Preferred Stock, Shares Issued upon Conversion</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion" xlink:to="lab_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_79d72f8a-2268-41b0-968c-e5ebf4556632_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of revenue</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive_32314ea8-1661-44b9-a89d-73bd5e67b176_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2025 to March 2026</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received, Rolling Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsTable_c6b6b93b-cb5d-4b5b-bc34-69a1f5eb2a01_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards [Table]</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsTable_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable" xlink:to="lab_us-gaap_OperatingLossCarryforwardsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_FinanceLeaseRightOfUseAssetGross_d0fd9f4a-f4d9-4d96-941b-8a0fbf6d30b5_terseLabel_en-US" xlink:label="lab_efoi_FinanceLeaseRightOfUseAssetGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment</link:label>
    <link:label id="lab_efoi_FinanceLeaseRightOfUseAssetGross_label_en-US" xlink:label="lab_efoi_FinanceLeaseRightOfUseAssetGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Right-Of-Use Asset, Gross</link:label>
    <link:label id="lab_efoi_FinanceLeaseRightOfUseAssetGross_documentation_en-US" xlink:label="lab_efoi_FinanceLeaseRightOfUseAssetGross" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Right-Of-Use Asset, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetGross" xlink:href="efoi-20210331.xsd#efoi_FinanceLeaseRightOfUseAssetGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_FinanceLeaseRightOfUseAssetGross" xlink:to="lab_efoi_FinanceLeaseRightOfUseAssetGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_cc86b362-e772-4973-bd78-e1a44249a2e9_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2025 to March 2026</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due in Rolling Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_e30b0544-e40a-4277-8476-b22f072e061e_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of inventory</link:label>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongtermDebtTypeDomain_10df209f-5802-409f-b4dc-b779855b7ef1_terseLabel_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Type [Domain]</link:label>
    <link:label id="lab_us-gaap_LongtermDebtTypeDomain_label_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtTypeDomain" xlink:to="lab_us-gaap_LongtermDebtTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensation_a26a05d8-00d1-4278-b272-20aef78d058d_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock-based compensation</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Noncash Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="lab_us-gaap_ShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableMember_74ae2789-bf61-4c0f-aaa4-650f05c93bd0_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableMember_label_en-US" xlink:label="lab_us-gaap_AccountsPayableMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Payable [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableMember" xlink:to="lab_us-gaap_AccountsPayableMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringReserveNoncurrent_e31cbbbe-dc6a-4402-b6b6-da45fb9933d5_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringReserveNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term restructuring liability, included in other liabilities</link:label>
    <link:label id="lab_us-gaap_RestructuringReserveNoncurrent_label_en-US" xlink:label="lab_us-gaap_RestructuringReserveNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Reserve, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserveNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringReserveNoncurrent" xlink:to="lab_us-gaap_RestructuringReserveNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_ec00774e-5065-488a-9db5-b789c55c8de7_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock withheld in lieu of income tax withholding on vesting of restricted stock units</link:label>
    <link:label id="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment, Tax Withholding, Share-based Payment Arrangement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CoverAbstract_cec85e63-5fd5-4c74-b6b0-b31696d4e070_terseLabel_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:label id="lab_dei_CoverAbstract_label_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CoverAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract" xlink:to="lab_dei_CoverAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_21f0a74b-1b2c-429d-9608-014dae5ae1e1_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Useful life (in years)</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Useful Life</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_b0aa2858-b325-47a2-8ea1-ff7f2455d000_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Leases [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree_e7f8813a-383d-4254-9969-8ed64d93d77c_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2023 to March 2024</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received, Rolling Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_PaymentProtectionProgramNoncurrent_a62a7eb1-d56a-4f93-9f35-da63bbc7e054_terseLabel_en-US" xlink:label="lab_efoi_PaymentProtectionProgramNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">PPP loan, net of current maturities</link:label>
    <link:label id="lab_efoi_PaymentProtectionProgramNoncurrent_label_en-US" xlink:label="lab_efoi_PaymentProtectionProgramNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment Protection Program, Noncurrent</link:label>
    <link:label id="lab_efoi_PaymentProtectionProgramNoncurrent_documentation_en-US" xlink:label="lab_efoi_PaymentProtectionProgramNoncurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment Protection Program, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentProtectionProgramNoncurrent" xlink:href="efoi-20210331.xsd#efoi_PaymentProtectionProgramNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PaymentProtectionProgramNoncurrent" xlink:to="lab_efoi_PaymentProtectionProgramNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_f032287e-906e-4cf4-b0e7-1f8da7c10f1d_terseLabel_en-US" xlink:label="lab_efoi_DebtInstrumentProceedsToBePaidToLenderPercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of gross proceeds used to make payments on note</link:label>
    <link:label id="lab_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_label_en-US" xlink:label="lab_efoi_DebtInstrumentProceedsToBePaidToLenderPercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Proceeds To Be Paid To Lender, Percent</link:label>
    <link:label id="lab_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_documentation_en-US" xlink:label="lab_efoi_DebtInstrumentProceedsToBePaidToLenderPercent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Proceeds To Be Paid To Lender, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentProceedsToBePaidToLenderPercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent" xlink:to="lab_efoi_DebtInstrumentProceedsToBePaidToLenderPercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_e902cc7c-c495-4c91-9215-3f9df1f4c9ab_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Deferred Revenue</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:to="lab_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_e9ba7532-e6ba-4832-9423-09980cfaa805_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_99164c02-8c71-4d88-9c27-e269b8008ba0_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of sales</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Goods and Services Sold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_f44272b3-0cf9-42d1-8e9e-001ff5b8ba75_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_e171037e-07b7-47d9-a905-34ecb127da5b_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOrSaleOfEquity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross proceeds</link:label>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_label_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOrSaleOfEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Issuance or Sale of Equity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOrSaleOfEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity" xlink:to="lab_us-gaap_ProceedsFromIssuanceOrSaleOfEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_599a95cf-cec2-4368-ab5a-5abce0771b54_terseLabel_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis" xlink:to="lab_us-gaap_StatementEquityComponentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_41866a40-b220-4b6b-961f-840eafb48106_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finished goods</link:label>
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Finished Goods, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:to="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_543418b9-41cb-4999-be2e-032b10667644_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net proceeds from (payment on) credit line borrowings</link:label>
    <link:label id="lab_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_label_en-US" xlink:label="lab_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from (Repayments of) Lines of Credit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:to="lab_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_736b1f45-3a44-4722-87fa-8844a0626cc4_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Name [Domain]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentNameDomain" xlink:to="lab_us-gaap_DebtInstrumentNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MinimumMember_f424018f-9a1d-4573-82f7-88478e346c69_terseLabel_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum</link:label>
    <link:label id="lab_srt_MinimumMember_label_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember" xlink:to="lab_srt_MinimumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo_9ade3003-4fd0-42be-ad39-c7fd852e6148_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2022 to March 2023</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Payments, Due in Rolling Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_ccd72f90-9936-4e31-95d5-e2218cdfc180_terseLabel_en-US" xlink:label="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from External Customer [Line Items]</link:label>
    <link:label id="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_label_en-US" xlink:label="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from External Customer [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RepaymentsOfNotesPayable_34bb1709-cb74-48f7-937a-ba1466f573f8_negatedLabel_en-US" xlink:label="lab_us-gaap_RepaymentsOfNotesPayable" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments on the Iliad Note</link:label>
    <link:label id="lab_us-gaap_RepaymentsOfNotesPayable_afafb74b-b56c-4955-8461-47a2606249b5_terseLabel_en-US" xlink:label="lab_us-gaap_RepaymentsOfNotesPayable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments on the Iliad Note</link:label>
    <link:label id="lab_us-gaap_RepaymentsOfNotesPayable_label_en-US" xlink:label="lab_us-gaap_RepaymentsOfNotesPayable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Repayments of Notes Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfNotesPayable" xlink:to="lab_us-gaap_RepaymentsOfNotesPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_c7757669-cdaf-4488-8e41-7714fe740317_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_6e8f28ac-37a4-42a1-9f25-80472d18cc1b_periodStartLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_3775c0cf-b86a-4c0a-99f5-feb1083a596a_periodEndLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued warranty reserve at end of period</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard and Extended Product Warranty Accrual</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrual" xlink:to="lab_us-gaap_ProductWarrantyAccrual" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DebtInstrumentPrepaymentPremiumPercent_c33092da-48fa-4f43-a4e3-4f56dfc64908_terseLabel_en-US" xlink:label="lab_efoi_DebtInstrumentPrepaymentPremiumPercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepayment premium</link:label>
    <link:label id="lab_efoi_DebtInstrumentPrepaymentPremiumPercent_label_en-US" xlink:label="lab_efoi_DebtInstrumentPrepaymentPremiumPercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument Prepayment Premium Percent</link:label>
    <link:label id="lab_efoi_DebtInstrumentPrepaymentPremiumPercent_documentation_en-US" xlink:label="lab_efoi_DebtInstrumentPrepaymentPremiumPercent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument Prepayment Premium Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentPrepaymentPremiumPercent" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentPrepaymentPremiumPercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DebtInstrumentPrepaymentPremiumPercent" xlink:to="lab_efoi_DebtInstrumentPrepaymentPremiumPercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_d36b4c50-e610-4757-9575-404531c94bc0_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding at beginning of period (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_c36871fb-4877-4795-a754-8ee5f89fd79c_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding at end of period (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Non-Option Equity Instruments, Outstanding, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_FusionParkMember_037c729b-7108-4095-9915-a279a6f0d1d1_terseLabel_en-US" xlink:label="lab_efoi_FusionParkMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fusion Park</link:label>
    <link:label id="lab_efoi_FusionParkMember_label_en-US" xlink:label="lab_efoi_FusionParkMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fusion Park [Member]</link:label>
    <link:label id="lab_efoi_FusionParkMember_documentation_en-US" xlink:label="lab_efoi_FusionParkMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fusion Park</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FusionParkMember" xlink:href="efoi-20210331.xsd#efoi_FusionParkMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_FusionParkMember" xlink:to="lab_efoi_FusionParkMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_bef1524c-9c52-46c4-bbd4-8068e6407579_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2022 to March 2023</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due in Rolling Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_87df295c-d1b7-458d-a0c3-08cc9cdfe6a4_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of valuation assumptions</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_139b399f-1650-46ee-a670-a1a52c4af589_terseLabel_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_label_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityInteractiveDataCurrent" xlink:to="lab_dei_EntityInteractiveDataCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_5da8521e-8eaf-42c1-a806-dc64a0630e92_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flows from operating activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PurchaseObligation_e9fbbe8f-a2ee-41ed-b84a-2084cce1fa29_terseLabel_en-US" xlink:label="lab_us-gaap_PurchaseObligation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding purchase commitments</link:label>
    <link:label id="lab_us-gaap_PurchaseObligation_label_en-US" xlink:label="lab_us-gaap_PurchaseObligation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Purchase Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PurchaseObligation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PurchaseObligation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PurchaseObligation" xlink:to="lab_us-gaap_PurchaseObligation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_35b15c53-1e51-4f20-99b9-8afb8cdd4024_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of option activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Option, Activity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy_11f61f71-0041-4ae3-973a-a884067ff0d3_terseLabel_en-US" xlink:label="lab_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable</link:label>
    <link:label id="lab_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy_label_en-US" xlink:label="lab_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trade and Other Accounts Receivable, Unbilled Receivables, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy" xlink:to="lab_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableMember_6e0aa974-bedf-47bb-8d44-9fd1ef6b9b76_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableMember_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableMember" xlink:to="lab_us-gaap_AccountsReceivableMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_64104fde-d915-43d7-81e2-008b637c66e4_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Annual facility fee</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Commitment Fee Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityCommitmentFeePercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:to="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_NewCreditFacilitiesMember_9f5ede77-07f1-463c-b374-cb0634f13558_terseLabel_en-US" xlink:label="lab_efoi_NewCreditFacilitiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facilities</link:label>
    <link:label id="lab_efoi_NewCreditFacilitiesMember_label_en-US" xlink:label="lab_efoi_NewCreditFacilitiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">New Credit Facilities [Member]</link:label>
    <link:label id="lab_efoi_NewCreditFacilitiesMember_documentation_en-US" xlink:label="lab_efoi_NewCreditFacilitiesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">New Credit Facilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NewCreditFacilitiesMember" xlink:href="efoi-20210331.xsd#efoi_NewCreditFacilitiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_NewCreditFacilitiesMember" xlink:to="lab_efoi_NewCreditFacilitiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_NameOfMajorCustomerDomain_84fa03b0-58a8-42d3-81ad-cbfca6ebdc48_terseLabel_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Domain]</link:label>
    <link:label id="lab_srt_NameOfMajorCustomerDomain_label_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_NameOfMajorCustomerDomain" xlink:to="lab_srt_NameOfMajorCustomerDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_32064ec4-46a6-4b10-8b0c-2e2b13e1e793_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Remaining Contractual Life (in years)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Additional Disclosures [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_6ab539ef-61af-432d-a1d9-8fd7b0d97a0b_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid in Capital, Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityRegistrantName_906e7231-c417-4096-ba8a-02a3317a3926_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:label id="lab_dei_EntityRegistrantName_label_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityRegistrantName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName" xlink:to="lab_dei_EntityRegistrantName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_470e540a-276e-4c42-99bb-5ca5048afe45_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeDomain" xlink:to="lab_us-gaap_SubsequentEventTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_171fcd98-781e-48a9-90c4-b63697bc6b6a_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskLineItems_3f206655-37dd-4df3-84de-8c35e20740f2_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk [Line Items]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskLineItems_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskLineItems" xlink:to="lab_us-gaap_ConcentrationRiskLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedEmployeeBenefitsCurrent_ef8b08d3-de37-47cb-9c29-3c8af3d78127_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued payroll and related benefits</link:label>
    <link:label id="lab_us-gaap_AccruedEmployeeBenefitsCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Employee Benefits, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:to="lab_us-gaap_AccruedEmployeeBenefitsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentFeeAmount_9dc2ed2d-1f00-4a75-b51b-ef5dbf210efe_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentFeeAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Termination fee</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentFeeAmount_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentFeeAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Fee Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFeeAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentFeeAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentFeeAmount" xlink:to="lab_us-gaap_DebtInstrumentFeeAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation_9e0e3652-e9ed-4a61-b4dc-47e57d00d956_negatedTerseLabel_en-US" xlink:label="lab_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Allowances for depreciation</link:label>
    <link:label id="lab_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation_label_en-US" xlink:label="lab_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Right-Of-Use Asset, Accumulated Depreciation</link:label>
    <link:label id="lab_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation_documentation_en-US" xlink:label="lab_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Right-Of-Use Asset, Accumulated Depreciation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:href="efoi-20210331.xsd#efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:to="lab_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfWarrants_9befbf7b-1fe2-4048-8ecd-05a6f287e424_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfWarrants" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from issuance of warrants</link:label>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfWarrants_label_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfWarrants" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Issuance of Warrants</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfWarrants" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfWarrants"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfWarrants" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfWarrants" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_1897b9d7-b104-4314-b1a0-5770d9fd5cab_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Units</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Non-Option Equity Instruments, Outstanding [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeaseSubleaseIncome_673fad8e-bab3-49a8-9e00-acb88d27cdf1_negatedTerseLabel_en-US" xlink:label="lab_efoi_RestructuredLeaseSubleaseIncome" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sub-lease income</link:label>
    <link:label id="lab_efoi_RestructuredLeaseSubleaseIncome_label_en-US" xlink:label="lab_efoi_RestructuredLeaseSubleaseIncome" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Lease, Sublease Income</link:label>
    <link:label id="lab_efoi_RestructuredLeaseSubleaseIncome_documentation_en-US" xlink:label="lab_efoi_RestructuredLeaseSubleaseIncome" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Lease, Sublease Income</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseSubleaseIncome" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeaseSubleaseIncome"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeaseSubleaseIncome" xlink:to="lab_efoi_RestructuredLeaseSubleaseIncome" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_ff43db1a-c0ec-404c-b32d-663574a237fd_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Exercise Price Per Share</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_dca9ea21-4382-4f89-ade2-cf3cd1508113_negatedLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less imputed interest</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:to="lab_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VehiclesMember_3c2d1763-fbfe-4b0d-9651-7db80a9eec55_terseLabel_en-US" xlink:label="lab_us-gaap_VehiclesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicles</link:label>
    <link:label id="lab_us-gaap_VehiclesMember_label_en-US" xlink:label="lab_us-gaap_VehiclesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vehicles [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VehiclesMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VehiclesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VehiclesMember" xlink:to="lab_us-gaap_VehiclesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseMember_dac6e506-5fe2-47cf-93c1-74b11f005216_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product development</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseMember_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Research and Development Expense [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_239421da-30f4-4f54-9d5a-14879e39cf6b_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Conversion of notes to preferred stock</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Value, Conversion of Convertible Securities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_79db2d54-3a42-4b0a-abc5-4f3207f27c2e_terseLabel_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_label_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode" xlink:to="lab_dei_EntityIncorporationStateCountryCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_cb50278e-e017-4c2f-824b-825917183b73_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trade accounts receivable, less allowances of $14 and $8, respectively</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent" xlink:to="lab_us-gaap_AccountsReceivableNetCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_185b127c-a6c7-4d1c-a670-be00bf6e141f_totalLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total future undiscounted lease payments</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringReserve_5fcd8bf6-68d1-442a-8eec-5204f3a00b4a_periodStartLabel_en-US" xlink:label="lab_us-gaap_RestructuringReserve" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance</link:label>
    <link:label id="lab_us-gaap_RestructuringReserve_f830a991-521d-47bd-a6e2-f22d1321a4bb_periodEndLabel_en-US" xlink:label="lab_us-gaap_RestructuringReserve" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance</link:label>
    <link:label id="lab_us-gaap_RestructuringReserve_label_en-US" xlink:label="lab_us-gaap_RestructuringReserve" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Reserve</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserve" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserve"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringReserve" xlink:to="lab_us-gaap_RestructuringReserve" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_4d35ac97-05f2-4866-bc88-e8b2ca84e492_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Risk free interest rate, minimum</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate, Minimum</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentRedemptionPeriodDomain_2fadf951-8e43-4f1b-86ea-008a32fd3f58_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPeriodDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Redemption, Period [Domain]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentRedemptionPeriodDomain_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPeriodDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Redemption, Period [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain" xlink:to="lab_us-gaap_DebtInstrumentRedemptionPeriodDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsLineItems_dd26799a-3759-49ff-9398-4f4a465fb3f1_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards [Line Items]</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwardsLineItems_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwardsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems" xlink:to="lab_us-gaap_OperatingLossCarryforwardsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsidiarySaleOfStockAxis_a9665558-f121-44bd-a51d-032f0ab86ff3_terseLabel_en-US" xlink:label="lab_us-gaap_SubsidiarySaleOfStockAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale of Stock [Axis]</link:label>
    <link:label id="lab_us-gaap_SubsidiarySaleOfStockAxis_label_en-US" xlink:label="lab_us-gaap_SubsidiarySaleOfStockAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale of Stock [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis" xlink:to="lab_us-gaap_SubsidiarySaleOfStockAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressPostalZipCode_d701ca7d-4284-43ae-ad41-af0ba56780b5_terseLabel_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:label id="lab_dei_EntityAddressPostalZipCode_label_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressPostalZipCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode" xlink:to="lab_dei_EntityAddressPostalZipCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent_f6182500-df08-4822-b4d7-63e03279c2c4_terseLabel_en-US" xlink:label="lab_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warrant liabilities</link:label>
    <link:label id="lab_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent_b9ad362d-e090-4c73-8dfc-8b4164e98177_periodStartLabel_en-US" xlink:label="lab_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance January 1, 2020</link:label>
    <link:label id="lab_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent_800ef07e-e030-42b1-a457-8d12cf2f9520_periodEndLabel_en-US" xlink:label="lab_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance March 31, 2020</link:label>
    <link:label id="lab_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Deferred Compensation Arrangements, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent" xlink:to="lab_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted_776eb68f-dba9-4450-bdd9-50245277f412_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basic and diluted (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted_78c028b5-b20b-43f4-a424-5e8066307e62_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basic weighted average common shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic and Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted" xlink:to="lab_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringCosts_f238824f-f2bb-446e-92b1-f0ad8d8c1b07_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring</link:label>
    <link:label id="lab_us-gaap_RestructuringCosts_label_en-US" xlink:label="lab_us-gaap_RestructuringCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCosts" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringCosts" xlink:to="lab_us-gaap_RestructuringCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract_5b6cc5bc-413f-497f-88f6-a708db58e53c_terseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases Sub-lease Payments</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payments, Rolling Maturity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentRedemptionPeriodTwoMember_33839836-c0b6-40ad-a781-b01449a92877_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPeriodTwoMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Redemption, Period Two</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentRedemptionPeriodTwoMember_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPeriodTwoMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Redemption, Period Two [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodTwoMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodTwoMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodTwoMember" xlink:to="lab_us-gaap_DebtInstrumentRedemptionPeriodTwoMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringCostAndReserveAxis_9f462216-50a6-4214-9e73-478ea8534689_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringCostAndReserveAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Type [Axis]</link:label>
    <link:label id="lab_us-gaap_RestructuringCostAndReserveAxis_label_en-US" xlink:label="lab_us-gaap_RestructuringCostAndReserveAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringCostAndReserveAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringCostAndReserveAxis" xlink:to="lab_us-gaap_RestructuringCostAndReserveAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_b9dd4eeb-6ed5-4149-8f6c-6fbf821f2ef8_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Foreign currency translation adjustments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:to="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForRestructuring_b0b71d1e-9263-4f4a-9a33-9bd580d668e5_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsForRestructuring" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments</link:label>
    <link:label id="lab_us-gaap_PaymentsForRestructuring_label_en-US" xlink:label="lab_us-gaap_PaymentsForRestructuring" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments for Restructuring</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRestructuring" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForRestructuring"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForRestructuring" xlink:to="lab_us-gaap_PaymentsForRestructuring" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_93492534-737c-4028-8cb5-2f287956fdb3_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of valuation assumptions</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Measurement Inputs and Valuation Techniques [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentTransitionReport_653e9a53-dcd7-4134-8516-12629fe76a45_terseLabel_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Transition Report</link:label>
    <link:label id="lab_dei_DocumentTransitionReport_label_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Transition Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentTransitionReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentTransitionReport" xlink:to="lab_dei_DocumentTransitionReport" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentRedemptionPeriodAxis_2820b0b6-164d-4976-bbcf-06f6c6f83bf3_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPeriodAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Redemption, Period [Axis]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentRedemptionPeriodAxis_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentRedemptionPeriodAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Redemption, Period [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis" xlink:to="lab_us-gaap_DebtInstrumentRedemptionPeriodAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_2697a056-bcb5-461f-9f10-a09b9c68345c_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WarrantMember_09e3c2f3-862d-45d6-b2a4-1b829b338fff_terseLabel_en-US" xlink:label="lab_us-gaap_WarrantMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warrant</link:label>
    <link:label id="lab_us-gaap_WarrantMember_label_en-US" xlink:label="lab_us-gaap_WarrantMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warrant [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WarrantMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WarrantMember" xlink:to="lab_us-gaap_WarrantMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_IncreaseDecreaseInProvisionForWarranties_1295bdc2-0413-4600-be51-89a19da525e7_terseLabel_en-US" xlink:label="lab_efoi_IncreaseDecreaseInProvisionForWarranties" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for warranties</link:label>
    <link:label id="lab_efoi_IncreaseDecreaseInProvisionForWarranties_label_en-US" xlink:label="lab_efoi_IncreaseDecreaseInProvisionForWarranties" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) In Provision For Warranties</link:label>
    <link:label id="lab_efoi_IncreaseDecreaseInProvisionForWarranties_documentation_en-US" xlink:label="lab_efoi_IncreaseDecreaseInProvisionForWarranties" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) In Provision For Warranties</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_IncreaseDecreaseInProvisionForWarranties" xlink:href="efoi-20210331.xsd#efoi_IncreaseDecreaseInProvisionForWarranties"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_IncreaseDecreaseInProvisionForWarranties" xlink:to="lab_efoi_IncreaseDecreaseInProvisionForWarranties" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_d495d3ec-ee2f-4794-a846-b0716ada40a5_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax assets, operating loss carry-forwards</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Operating Loss Carryforwards</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:to="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_PercentageOfSeriesAPreferredStockEligibleToVote_34e212b2-bdd9-4e43-81d2-7fbc1a6c5b0a_terseLabel_en-US" xlink:label="lab_efoi_PercentageOfSeriesAPreferredStockEligibleToVote" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Votes equal to the number of shares of common stock convertible</link:label>
    <link:label id="lab_efoi_PercentageOfSeriesAPreferredStockEligibleToVote_label_en-US" xlink:label="lab_efoi_PercentageOfSeriesAPreferredStockEligibleToVote" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of Series A Preferred Stock Eligible to Vote</link:label>
    <link:label id="lab_efoi_PercentageOfSeriesAPreferredStockEligibleToVote_documentation_en-US" xlink:label="lab_efoi_PercentageOfSeriesAPreferredStockEligibleToVote" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percentage of Series A Preferred Stock Eligible to Vote</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PercentageOfSeriesAPreferredStockEligibleToVote" xlink:href="efoi-20210331.xsd#efoi_PercentageOfSeriesAPreferredStockEligibleToVote"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PercentageOfSeriesAPreferredStockEligibleToVote" xlink:to="lab_efoi_PercentageOfSeriesAPreferredStockEligibleToVote" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentFaceAmount_b0721e1f-df9d-4806-859a-c1cb9145290b_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Principal amount</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentFaceAmount_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Face Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentFaceAmount" xlink:to="lab_us-gaap_DebtInstrumentFaceAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_80f3d92b-a23c-4546-9f4b-b8445426335d_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Significant Other Observable Inputs (Level 2)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Inputs, Level 2 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel2Member" xlink:to="lab_us-gaap_FairValueInputsLevel2Member" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentQuarterlyReport_af11f532-e717-473c-bcd8-7f224d8c8f25_terseLabel_en-US" xlink:label="lab_dei_DocumentQuarterlyReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:label id="lab_dei_DocumentQuarterlyReport_label_en-US" xlink:label="lab_dei_DocumentQuarterlyReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentQuarterlyReport" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentQuarterlyReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentQuarterlyReport" xlink:to="lab_dei_DocumentQuarterlyReport" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_dcfdb9b8-4494-45ae-91ad-ffe28f3a1e0e_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Canceled/forfeited (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_5bdb20a6-0111-4d55-ad41-f5d9901463f3_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentEffectsOnEarningsPerShareTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment Effects on Earnings Per Share [Table]</link:label>
    <link:label id="lab_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_label_en-US" xlink:label="lab_us-gaap_ImpairmentEffectsOnEarningsPerShareTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Impairment Effects on Earnings Per Share [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable" xlink:to="lab_us-gaap_ImpairmentEffectsOnEarningsPerShareTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConversionOfStockSharesConverted1_b03ee936-c92f-4177-b799-48b51c1996b4_terseLabel_en-US" xlink:label="lab_us-gaap_ConversionOfStockSharesConverted1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock converted to common stock (in shares)</link:label>
    <link:label id="lab_us-gaap_ConversionOfStockSharesConverted1_label_en-US" xlink:label="lab_us-gaap_ConversionOfStockSharesConverted1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Conversion of Stock, Shares Converted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConversionOfStockSharesConverted1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConversionOfStockSharesConverted1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConversionOfStockSharesConverted1" xlink:to="lab_us-gaap_ConversionOfStockSharesConverted1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_e7c6e23b-8d91-4a1e-8156-8a20aad0cafe_negatedLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Offering costs on issuance of common stock and warrants</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to Additional Paid in Capital, Stock Issued, Issuance Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_InventoryReserveRollForward_a699de65-efc6-4b41-a6db-aa125e00f151_terseLabel_en-US" xlink:label="lab_efoi_InventoryReserveRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Reserve [Roll Forward]</link:label>
    <link:label id="lab_efoi_InventoryReserveRollForward_label_en-US" xlink:label="lab_efoi_InventoryReserveRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Reserve [Roll Forward]</link:label>
    <link:label id="lab_efoi_InventoryReserveRollForward_documentation_en-US" xlink:label="lab_efoi_InventoryReserveRollForward" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Reserve</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryReserveRollForward" xlink:href="efoi-20210331.xsd#efoi_InventoryReserveRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_InventoryReserveRollForward" xlink:to="lab_efoi_InventoryReserveRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityCurrent_7cf62370-4f54-472b-bd6d-95121314610c_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred revenue</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contract with Customer, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventLineItems_7f74fc16-6ef3-4614-8cf2-fea83ae5e36e_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Line Items]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventLineItems_label_en-US" xlink:label="lab_us-gaap_SubsequentEventLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventLineItems" xlink:to="lab_us-gaap_SubsequentEventLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c36390b8-8769-4775-84c9-6e79a1220ebc_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CustomerConcentrationRiskMember_7d051b6b-a859-4b29-8d4f-1b74f94398cd_terseLabel_en-US" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer concentration risk</link:label>
    <link:label id="lab_us-gaap_CustomerConcentrationRiskMember_label_en-US" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Customer Concentration Risk [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerConcentrationRiskMember" xlink:to="lab_us-gaap_CustomerConcentrationRiskMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_ec626f1c-3000-4506-bc28-80f64649266a_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested and expected to vest at period end (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityDomain_aa33c3da-5ab4-4dde-9850-d2c7be9f4a09_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:label id="lab_us-gaap_CreditFacilityDomain_label_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityDomain" xlink:to="lab_us-gaap_CreditFacilityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentConvertibleConversionPrice1_0a8a0e9c-3ca9-4300-baec-6df744cc41be_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentConvertibleConversionPrice1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Conversion rate (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentConvertibleConversionPrice1_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentConvertibleConversionPrice1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Convertible, Conversion Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentConvertibleConversionPrice1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1" xlink:to="lab_us-gaap_DebtInstrumentConvertibleConversionPrice1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherIncomeAndExpensesAbstract_92c8ff88-1c75-43b0-8840-dea6ddc5b1ae_terseLabel_en-US" xlink:label="lab_us-gaap_OtherIncomeAndExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other expenses (income):</link:label>
    <link:label id="lab_us-gaap_OtherIncomeAndExpensesAbstract_label_en-US" xlink:label="lab_us-gaap_OtherIncomeAndExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Income and Expenses [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIncomeAndExpensesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherIncomeAndExpensesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="lab_us-gaap_OtherIncomeAndExpensesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_FinanceLeaseRightOfUseAssetMember_6233e414-c4e6-4e69-9d02-f2f597f4282a_terseLabel_en-US" xlink:label="lab_efoi_FinanceLeaseRightOfUseAssetMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance lease right-of-use asset</link:label>
    <link:label id="lab_efoi_FinanceLeaseRightOfUseAssetMember_label_en-US" xlink:label="lab_efoi_FinanceLeaseRightOfUseAssetMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Right Of Use Asset [Member]</link:label>
    <link:label id="lab_efoi_FinanceLeaseRightOfUseAssetMember_documentation_en-US" xlink:label="lab_efoi_FinanceLeaseRightOfUseAssetMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Right Of Use Asset [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetMember" xlink:href="efoi-20210331.xsd#efoi_FinanceLeaseRightOfUseAssetMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_FinanceLeaseRightOfUseAssetMember" xlink:to="lab_efoi_FinanceLeaseRightOfUseAssetMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_f63936a7-dddb-4f0b-b20d-92149053bdbe_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expected life (in years)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFileNumber_173a527f-16a1-4865-abf3-951964ad0961_terseLabel_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity File Number</link:label>
    <link:label id="lab_dei_EntityFileNumber_label_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityFileNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber" xlink:to="lab_dei_EntityFileNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_8c466659-eddb-4077-a082-ee57f0753ce4_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expired (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Expirations in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtDisclosureAbstract_24427a9a-c54f-4694-a096-46cc15e7035f_terseLabel_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_DebtDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureAbstract" xlink:to="lab_us-gaap_DebtDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_1fe9621f-6752-47b9-a983-2a2d47018d62_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease, weighted average remaining lease term</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermPurchaseCommitmentLineItems_79e10fd0-1c0a-40ff-bc4f-b490b3dd97a4_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermPurchaseCommitmentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Purchase Commitment [Line Items]</link:label>
    <link:label id="lab_us-gaap_LongTermPurchaseCommitmentLineItems_label_en-US" xlink:label="lab_us-gaap_LongTermPurchaseCommitmentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Purchase Commitment [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermPurchaseCommitmentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentLineItems" xlink:to="lab_us-gaap_LongTermPurchaseCommitmentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringPlanAxis_955a82a0-e967-42ea-8a2b-df92281d1f5f_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringPlanAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Plan [Axis]</link:label>
    <link:label id="lab_us-gaap_RestructuringPlanAxis_label_en-US" xlink:label="lab_us-gaap_RestructuringPlanAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Plan [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringPlanAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringPlanAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringPlanAxis" xlink:to="lab_us-gaap_RestructuringPlanAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases_b4254734-d822-4660-878c-89d4f4ddc8c1_totalLabel_en-US" xlink:label="lab_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease liabilities, total</link:label>
    <link:label id="lab_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases_label_en-US" xlink:label="lab_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Including Restructured Leases</link:label>
    <link:label id="lab_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases_documentation_en-US" xlink:label="lab_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Including Restructured Leases</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseLiabilityIncludingRestructuredLeases"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases" xlink:to="lab_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals_626bcdee-6f94-421f-ade0-73b0159fd16b_terseLabel_en-US" xlink:label="lab_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Right to defer mandatory redemption, number of deferrals</link:label>
    <link:label id="lab_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals_label_en-US" xlink:label="lab_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Right To Defer Mandatory Redemption, Number Of Deferrals</link:label>
    <link:label id="lab_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals_documentation_en-US" xlink:label="lab_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Right To Defer Mandatory Redemption, Number Of Deferrals</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" xlink:to="lab_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_5697f071-f6ba-4151-b123-583b2c74d1c4_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash provided by financing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_e18d556c-4cae-4656-87a6-f02c1827425f_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2021 to March 2022</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Next Rolling Twelve Months</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued_85f50121-69ed-4491-b893-b5786650bdf5_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warrant liability</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to Additional Paid in Capital, Warrant Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_20c8a42a-154e-43cf-8513-d7f94392906b_terseLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock-based compensation expense</link:label>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_label_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_a4dfd7a7-ae77-486a-b592-7a8a2ca4df2e_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock under employee stock option and stock purchase plans</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Value, Employee Stock Purchase Plan</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_CounterpartyNameAxis_c0d7503d-2972-4b20-aff9-3d80ad5052f8_terseLabel_en-US" xlink:label="lab_srt_CounterpartyNameAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Counterparty Name [Axis]</link:label>
    <link:label id="lab_srt_CounterpartyNameAxis_label_en-US" xlink:label="lab_srt_CounterpartyNameAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Counterparty Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CounterpartyNameAxis" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CounterpartyNameAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CounterpartyNameAxis" xlink:to="lab_srt_CounterpartyNameAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockValue_3fd95321-a5e6-4d25-a6ec-d5d277c12062_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, par value $0.0001 per share</link:label>
    <link:label id="lab_us-gaap_CommonStockValue_label_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Value, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValue" xlink:to="lab_us-gaap_CommonStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalYearFocus_f169c027-dd61-435a-92ad-0cdb04631e29_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalYearFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentFiscalYearFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus" xlink:to="lab_dei_DocumentFiscalYearFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_5f9b4176-38f4-4cc8-839b-ab469d4eb7c3_terseLabel_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2023 to March 2024</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_label_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Three</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_documentation_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:to="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCurrentReportingStatus_26f0ebc6-7213-4b3e-86cc-c133df27a725_terseLabel_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:label id="lab_dei_EntityCurrentReportingStatus_label_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCurrentReportingStatus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCurrentReportingStatus" xlink:to="lab_dei_EntityCurrentReportingStatus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SaleOfStockPricePerShare_bdbd6901-fdd0-4134-83ee-5418271fe175_terseLabel_en-US" xlink:label="lab_us-gaap_SaleOfStockPricePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale of common stock (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_SaleOfStockPricePerShare_label_en-US" xlink:label="lab_us-gaap_SaleOfStockPricePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale of Stock, Price Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SaleOfStockPricePerShare" xlink:to="lab_us-gaap_SaleOfStockPricePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityExpirationPeriod_2ab98c34-4283-4392-9d5f-075c1d643af8_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityExpirationPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of credit term (in years)</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityExpirationPeriod_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityExpirationPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Expiration Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityExpirationPeriod" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityExpirationPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityExpirationPeriod" xlink:to="lab_us-gaap_LineOfCreditFacilityExpirationPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour_75ae1a64-6c49-403f-92ef-7f426d2f8792_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2024 to March 2025</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Payments, Due in Rolling Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTable_a54a9272-8162-4841-bd3d-ce672afb8f92_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Table]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTable_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTable" xlink:to="lab_us-gaap_SubsequentEventTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerSharePolicyTextBlock_2e07b460-49df-4f1a-9dae-a8e6ab1c1ac3_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerSharePolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net loss per share</link:label>
    <link:label id="lab_us-gaap_EarningsPerSharePolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_EarningsPerSharePolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerSharePolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerSharePolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerSharePolicyTextBlock" xlink:to="lab_us-gaap_EarningsPerSharePolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentTable_719589a1-3035-4aec-bf74-cabd9ce11d9b_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Long-term Debt Instruments [Table]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentTable_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Long-term Debt Instruments [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentTable" xlink:to="lab_us-gaap_DebtInstrumentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent_8a31c76d-62b4-41fb-b0d5-6810f19b43d5_terseLabel_en-US" xlink:label="lab_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Percent of accounts receivable used as borrowing capacity</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent_label_en-US" xlink:label="lab_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Borrowing Capacity, Value Of Accounts Receivable, Percent</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent_documentation_en-US" xlink:label="lab_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Borrowing Capacity, Value Of Accounts Receivable, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent" xlink:to="lab_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_863eabd7-4d16-4db6-8f88-fcf0639039f1_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_cf63d516-b459-4f2b-a938-01a662e48f75_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureAbstract" xlink:to="lab_us-gaap_InventoryDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_0676149f-8378-4c5e-b452-075c73289e4f_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash flows from investing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_d8c4eb18-fe00-4bc3-ae61-01992b81eaa0_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, issued (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued" xlink:to="lab_us-gaap_CommonStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_6d199ad3-bbd6-4eaa-9fa0-72f87a5b32c3_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_5b8015b5-677f-4315-a8db-98b8a1df3c03_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from External Customers by Products and Services [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from External Customers by Products and Services [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:to="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_67b3ed73-a571-471e-977a-0e39c6b2541c_terseLabel_en-US" xlink:label="lab_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount paid related to expenses for registered direct offering and concurrent private placement</link:label>
    <link:label id="lab_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_label_en-US" xlink:label="lab_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments Related To Expenses For Registered Direct Offering And Concurrent Private Placement</link:label>
    <link:label id="lab_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_documentation_en-US" xlink:label="lab_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments Related To Expenses For Registered Direct Offering And Concurrent Private Placement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" xlink:href="efoi-20210331.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" xlink:to="lab_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_c606f31e-4ffa-45b2-af12-8803631e9aa2_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_e5c94222-6f65-48a2-b007-91f298d64772_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease obligations</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiability" xlink:to="lab_us-gaap_OperatingLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo_06ea210c-aa82-4b7c-9d84-6b6f4fb19fc4_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2022 to March 2023</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received, Rolling Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_74e259d5-b4b6-45be-90a8-489dd82d08de_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentLineItems_458578f6-c80f-4760-aa30-aba4a07f0f4f_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Line Items]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentLineItems_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentLineItems" xlink:to="lab_us-gaap_DebtInstrumentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_572d5794-3b14-4434-a7a6-dfa1713d572d_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquity_6dd66e14-45ce-40b5-8850-1f48e31c7a4c_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total stockholders' equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_c6f6d411-a8ff-47f3-8b9f-ddcb99359a98_periodStartLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at the beginning of the period</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_d2bcd9ad-c6e0-48f0-a4c5-faeeac51d124_periodEndLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Balance at the end of the period</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_539a7650-1a3f-4c56-bdd6-7762430112af_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_label_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="lab_us-gaap_StockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_ToolingMember_6be39a2c-c618-4166-a94d-c0da2fcedbd9_terseLabel_en-US" xlink:label="lab_efoi_ToolingMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tooling</link:label>
    <link:label id="lab_efoi_ToolingMember_label_en-US" xlink:label="lab_efoi_ToolingMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Tooling [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ToolingMember" xlink:href="efoi-20210331.xsd#efoi_ToolingMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_ToolingMember" xlink:to="lab_efoi_ToolingMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NatureOfOperations_5a59ef0a-e8dc-4a99-829b-937ec2764369_terseLabel_en-US" xlink:label="lab_us-gaap_NatureOfOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Nature of Operations</link:label>
    <link:label id="lab_us-gaap_NatureOfOperations_label_en-US" xlink:label="lab_us-gaap_NatureOfOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Nature of Operations [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NatureOfOperations" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NatureOfOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NatureOfOperations" xlink:to="lab_us-gaap_NatureOfOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsOfStockIssuanceCosts_30792bd8-7dcd-4e5c-a9d4-dacc9c6f48ca_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfStockIssuanceCosts" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Offering costs paid on the issuance of common stock and warrants</link:label>
    <link:label id="lab_us-gaap_PaymentsOfStockIssuanceCosts_44658dfb-c6a4-4f90-b4a1-77ff1a90cf3b_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfStockIssuanceCosts" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments of Stock Issuance Costs</link:label>
    <link:label id="lab_us-gaap_PaymentsOfStockIssuanceCosts_label_en-US" xlink:label="lab_us-gaap_PaymentsOfStockIssuanceCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments of Stock Issuance Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfStockIssuanceCosts" xlink:to="lab_us-gaap_PaymentsOfStockIssuanceCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskTypeDomain_622e001b-49cc-484d-aefe-add674b30c91_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskTypeDomain_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain" xlink:to="lab_us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_bdc20549-8271-4f54-b826-62b1de8080d8_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total liabilities and stockholders' equity</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities and Equity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_000d6a5a-d60d-45a9-b53b-cf3c9f36fbad_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated other comprehensive loss</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_8994e6f2-d4c1-41a8-bbc2-548f90d81d47_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DebtInstrumentNumberOfCreditFacilities_7bff9827-7443-4b70-aeec-98ac87b6e1ad_terseLabel_en-US" xlink:label="lab_efoi_DebtInstrumentNumberOfCreditFacilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of debt financing facilities</link:label>
    <link:label id="lab_efoi_DebtInstrumentNumberOfCreditFacilities_label_en-US" xlink:label="lab_efoi_DebtInstrumentNumberOfCreditFacilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Number Of Credit Facilities</link:label>
    <link:label id="lab_efoi_DebtInstrumentNumberOfCreditFacilities_documentation_en-US" xlink:label="lab_efoi_DebtInstrumentNumberOfCreditFacilities" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Number Of Credit Facilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentNumberOfCreditFacilities" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentNumberOfCreditFacilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DebtInstrumentNumberOfCreditFacilities" xlink:to="lab_efoi_DebtInstrumentNumberOfCreditFacilities" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressCityOrTown_1cfd59c5-6fb9-4d38-a697-5bbd41df4c11_terseLabel_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:label id="lab_dei_EntityAddressCityOrTown_label_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressCityOrTown"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown" xlink:to="lab_dei_EntityAddressCityOrTown" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare_6d5e589c-e46d-412f-aa38-729d5334aa9f_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net loss (in usd per share)</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Continuing Operations, Per Basic and Diluted Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_40b47d71-778c-403a-808f-dd9d1f0b55ca_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_daf96f31-171b-4bb7-86fc-3f4c9d8113f0_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Units</link:label>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_label_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:to="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseCost_4684daa6-b577-49d1-890a-205d10ff71a2_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease cost</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseCost_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseCost" xlink:to="lab_us-gaap_OperatingLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_ae8b07de-5222-4a79-807a-04d6a2596b70_terseLabel_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2024 to March 2025</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_label_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Four</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_documentation_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:to="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths_d8fb277d-b29a-4158-a29f-cfa200d9d55e_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2021 to March 2022</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Payments, Due in Next Rolling Twelve Months</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_MMMProductsMember_6323eac5-0ea9-4384-86e3-9a76ec63c38b_terseLabel_en-US" xlink:label="lab_efoi_MMMProductsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">MMM products</link:label>
    <link:label id="lab_efoi_MMMProductsMember_label_en-US" xlink:label="lab_efoi_MMMProductsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">MMM Products [Member]</link:label>
    <link:label id="lab_efoi_MMMProductsMember_documentation_en-US" xlink:label="lab_efoi_MMMProductsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">MMM Products</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_MMMProductsMember" xlink:href="efoi-20210331.xsd#efoi_MMMProductsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_MMMProductsMember" xlink:to="lab_efoi_MMMProductsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_ShipbuilderForUSNavyMember_9b26c01d-b658-4636-9ba0-a42d86d97eae_terseLabel_en-US" xlink:label="lab_efoi_ShipbuilderForUSNavyMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shipbuilder For U.S. Navy</link:label>
    <link:label id="lab_efoi_ShipbuilderForUSNavyMember_label_en-US" xlink:label="lab_efoi_ShipbuilderForUSNavyMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shipbuilder For U.S. Navy [Member]</link:label>
    <link:label id="lab_efoi_ShipbuilderForUSNavyMember_documentation_en-US" xlink:label="lab_efoi_ShipbuilderForUSNavyMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shipbuilder For U.S. Navy</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ShipbuilderForUSNavyMember" xlink:href="efoi-20210331.xsd#efoi_ShipbuilderForUSNavyMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_ShipbuilderForUSNavyMember" xlink:to="lab_efoi_ShipbuilderForUSNavyMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_fe3ad4c8-c84c-4c54-9a10-8aeb3a4715a9_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Securities excluded from net loss per share calculation (in shares)</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityLineItems_199368cd-f5a0-4da0-a670-1760e7af265c_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility [Line Items]</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityLineItems_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems" xlink:to="lab_us-gaap_LineOfCreditFacilityLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1_bf91b682-32d7-4bcb-8d91-ded12a87845a_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance lease, weighted average remaining lease term</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Weighted Average Remaining Lease Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="lab_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityComponentDomain_8e35b7c9-f473-4ed0-b4f1-2c10835e9d8e_terseLabel_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:label id="lab_us-gaap_EquityComponentDomain_label_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain" xlink:to="lab_us-gaap_EquityComponentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_OperatingLeaseReceivable_9b0e0fe4-4457-4d3e-a360-0d3976d9ed23_negatedTerseLabel_en-US" xlink:label="lab_efoi_OperatingLeaseReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease obligations</link:label>
    <link:label id="lab_efoi_OperatingLeaseReceivable_label_en-US" xlink:label="lab_efoi_OperatingLeaseReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Receivable</link:label>
    <link:label id="lab_efoi_OperatingLeaseReceivable_documentation_en-US" xlink:label="lab_efoi_OperatingLeaseReceivable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseReceivable" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_OperatingLeaseReceivable" xlink:to="lab_efoi_OperatingLeaseReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAbstract_aa5ff83f-48a5-40c1-9a29-c18e02884aee_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">LIABILITIES</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAbstract" xlink:to="lab_us-gaap_LiabilitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GrossProfit_a28a59a3-89f5-4fa5-8057-e67a2d534976_totalLabel_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_GrossProfit_label_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Profit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit" xlink:to="lab_us-gaap_GrossProfit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_8a629374-1e11-4282-a0c2-fd3715aea92d_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_b3b8b7f0-1961-40fb-b863-898b0d5b1e8b_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConstructionInProgressMember_908b8d11-5c85-4119-a208-88acf1397841_terseLabel_en-US" xlink:label="lab_us-gaap_ConstructionInProgressMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Projects in progress</link:label>
    <link:label id="lab_us-gaap_ConstructionInProgressMember_label_en-US" xlink:label="lab_us-gaap_ConstructionInProgressMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Construction in Progress [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConstructionInProgressMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConstructionInProgressMember" xlink:to="lab_us-gaap_ConstructionInProgressMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_A2017RestructuringPlanMember_cc41cf9b-e456-43c6-b5ba-06b9b6021ce8_terseLabel_en-US" xlink:label="lab_efoi_A2017RestructuringPlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2017 Restructuring Plan</link:label>
    <link:label id="lab_efoi_A2017RestructuringPlanMember_label_en-US" xlink:label="lab_efoi_A2017RestructuringPlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2017 Restructuring Plan [Member]</link:label>
    <link:label id="lab_efoi_A2017RestructuringPlanMember_documentation_en-US" xlink:label="lab_efoi_A2017RestructuringPlanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2017 Restructuring Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2017RestructuringPlanMember" xlink:href="efoi-20210331.xsd#efoi_A2017RestructuringPlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_A2017RestructuringPlanMember" xlink:to="lab_efoi_A2017RestructuringPlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_ef449ffd-28b8-4991-ae09-fc5e9d05bdca_terseLabel_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_label_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber" xlink:to="lab_dei_EntityTaxIdentificationNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_ReceivablesFacilityMember_063eda9f-b255-4ef6-bcfb-af8b95b05d42_terseLabel_en-US" xlink:label="lab_efoi_ReceivablesFacilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivables Facility</link:label>
    <link:label id="lab_efoi_ReceivablesFacilityMember_label_en-US" xlink:label="lab_efoi_ReceivablesFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivables Facility [Member]</link:label>
    <link:label id="lab_efoi_ReceivablesFacilityMember_documentation_en-US" xlink:label="lab_efoi_ReceivablesFacilityMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Receivables Facility</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ReceivablesFacilityMember" xlink:href="efoi-20210331.xsd#efoi_ReceivablesFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_ReceivablesFacilityMember" xlink:to="lab_efoi_ReceivablesFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetIncomeLoss_fa46106f-67fb-474c-a0c1-610c7a9f34ef_totalLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net loss</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_02606074-01c0-4005-a8e2-644500ef5b87_terseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net loss</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_label_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Income (Loss) Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="lab_us-gaap_NetIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityNoncurrent_00243a70-6a4a-47e3-8ef2-2349cbfea129_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance lease liabilities, net of current portion</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityNoncurrent_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_c4349fee-0704-409a-9fae-d3a0674190a9_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Changes in operating assets and liabilities (Sources / (Uses) of cash):</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_4279d257-ba03-49b4-bb8a-96edab5a9eb3_terseLabel_en-US" xlink:label="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">London Interbank Offered Rate (LIBOR)</link:label>
    <link:label id="lab_us-gaap_LondonInterbankOfferedRateLIBORMember_label_en-US" xlink:label="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">London Interbank Offered Rate (LIBOR) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:to="lab_us-gaap_LondonInterbankOfferedRateLIBORMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_ba52f8f7-ffa0-4eaa-9306-eb7270912b31_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureTextBlock" xlink:to="lab_us-gaap_InventoryDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentUnamortizedPremium_6eaf8650-77bc-4d2e-a0e2-a69291a9c399_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentUnamortizedPremium" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issue discount</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentUnamortizedPremium_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentUnamortizedPremium" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Unamortized Premium</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedPremium" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentUnamortizedPremium"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentUnamortizedPremium" xlink:to="lab_us-gaap_DebtInstrumentUnamortizedPremium" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_InventoryValuationReservesRawMaterials_95c67c65-5c39-4ae1-b48d-6e959b1ae2c4_negatedLabel_en-US" xlink:label="lab_efoi_InventoryValuationReservesRawMaterials" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reserves for excess, obsolete, and slow-moving inventories</link:label>
    <link:label id="lab_efoi_InventoryValuationReservesRawMaterials_08ea1651-b0ef-43c0-83a9-90bdee9aeed5_negatedPeriodStartLabel_en-US" xlink:label="lab_efoi_InventoryValuationReservesRawMaterials" xlink:role="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance</link:label>
    <link:label id="lab_efoi_InventoryValuationReservesRawMaterials_496c4218-f02e-4f9f-820d-026dac86f5e5_negatedPeriodEndLabel_en-US" xlink:label="lab_efoi_InventoryValuationReservesRawMaterials" xlink:role="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Reserves for excess, obsolete, and slow-moving inventories</link:label>
    <link:label id="lab_efoi_InventoryValuationReservesRawMaterials_label_en-US" xlink:label="lab_efoi_InventoryValuationReservesRawMaterials" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Valuation Reserves, Raw Materials</link:label>
    <link:label id="lab_efoi_InventoryValuationReservesRawMaterials_documentation_en-US" xlink:label="lab_efoi_InventoryValuationReservesRawMaterials" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Valuation Reserves, Raw Materials</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesRawMaterials" xlink:href="efoi-20210331.xsd#efoi_InventoryValuationReservesRawMaterials"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_InventoryValuationReservesRawMaterials" xlink:to="lab_efoi_InventoryValuationReservesRawMaterials" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeasesAbstract_c8f8e0b1-321a-43b9-a919-cecf6eae2ed4_terseLabel_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:label id="lab_us-gaap_LeasesAbstract_label_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAbstract" xlink:to="lab_us-gaap_LeasesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongtermDebtTypeAxis_9b3805d4-997c-454a-8300-8d1fc5d27c44_terseLabel_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_LongtermDebtTypeAxis_label_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtTypeAxis" xlink:to="lab_us-gaap_LongtermDebtTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrent_8f05c337-c211-45ab-8290-d97933ded146_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current assets</link:label>
    <link:label id="lab_us-gaap_AssetsCurrent_label_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="lab_us-gaap_AssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_5483fa0d-fa46-41f3-9094-8419abc66f33_terseLabel_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_label_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate" xlink:to="lab_dei_CurrentFiscalYearEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingExpensesAbstract_d5fcf7e3-43b2-4ec4-89e8-bdb79f234234_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating expenses:</link:label>
    <link:label id="lab_us-gaap_OperatingExpensesAbstract_label_en-US" xlink:label="lab_us-gaap_OperatingExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Expenses [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpensesAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingExpensesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingExpensesAbstract" xlink:to="lab_us-gaap_OperatingExpensesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLossCarryforwards_bba3f139-815b-4323-9c56-69b74d203055_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating loss carry-forwards</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwards_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwards" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Loss Carryforwards</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwards"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwards" xlink:to="lab_us-gaap_OperatingLossCarryforwards" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_40d64891-55dc-4051-b209-e08395a17411_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Numerator:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract" xlink:to="lab_us-gaap_EarningsPerShareAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiability_7ab4820e-f969-4da7-9e13-b4efcf03ef97_verboseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance lease liabilities</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiability_732c43ec-5b8e-44d0-aa53-37d01f68751a_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease obligations</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiability_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiability" xlink:to="lab_us-gaap_FinanceLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_39d5af0c-3eb6-4e90-bf69-6679bdb2a40f_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">STOCKHOLDERS' EQUITY</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityAbstract" xlink:to="lab_us-gaap_StockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RegionalCommercialLightingRetrofitCompanyMember_c28113af-9624-4fdb-a269-c81bbdcbad03_terseLabel_en-US" xlink:label="lab_efoi_RegionalCommercialLightingRetrofitCompanyMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Distributor for the U.S. Navy and a Regional Commercial Lighting Retrofit Company</link:label>
    <link:label id="lab_efoi_RegionalCommercialLightingRetrofitCompanyMember_label_en-US" xlink:label="lab_efoi_RegionalCommercialLightingRetrofitCompanyMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Regional Commercial Lighting Retrofit Company [Member]</link:label>
    <link:label id="lab_efoi_RegionalCommercialLightingRetrofitCompanyMember_documentation_en-US" xlink:label="lab_efoi_RegionalCommercialLightingRetrofitCompanyMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Regional Commercial Lighting Retrofit Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RegionalCommercialLightingRetrofitCompanyMember" xlink:href="efoi-20210331.xsd#efoi_RegionalCommercialLightingRetrofitCompanyMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RegionalCommercialLightingRetrofitCompanyMember" xlink:to="lab_efoi_RegionalCommercialLightingRetrofitCompanyMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAbstract_e2a3ae30-c23b-4ac7-99c6-9fe521538fdd_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Classification of cash and restricted cash:</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAbstract_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and Cash Equivalents [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract" xlink:to="lab_us-gaap_CashAndCashEquivalentsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_AustinCreditFacilityMember_359becbc-c17e-4a20-b2ff-b9d04eec8781_terseLabel_en-US" xlink:label="lab_efoi_AustinCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Austin Credit Facility</link:label>
    <link:label id="lab_efoi_AustinCreditFacilityMember_label_en-US" xlink:label="lab_efoi_AustinCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Austin Credit Facility [Member]</link:label>
    <link:label id="lab_efoi_AustinCreditFacilityMember_documentation_en-US" xlink:label="lab_efoi_AustinCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Austin Credit Facility</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_AustinCreditFacilityMember" xlink:href="efoi-20210331.xsd#efoi_AustinCreditFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_AustinCreditFacilityMember" xlink:to="lab_efoi_AustinCreditFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_6707f52f-b604-428e-8c13-4f608dc663e3_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of Options</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_7a820d44-92e0-45b5-af05-ffa49be2240b_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus" xlink:to="lab_dei_DocumentFiscalPeriodFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_PaymentsForClearingFees_48170d87-7608-4bdb-ae71-616025659d2d_terseLabel_en-US" xlink:label="lab_efoi_PaymentsForClearingFees" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amount paid for clearing fees</link:label>
    <link:label id="lab_efoi_PaymentsForClearingFees_label_en-US" xlink:label="lab_efoi_PaymentsForClearingFees" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments For Clearing Fees</link:label>
    <link:label id="lab_efoi_PaymentsForClearingFees_documentation_en-US" xlink:label="lab_efoi_PaymentsForClearingFees" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments For Clearing Fees</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees" xlink:href="efoi-20210331.xsd#efoi_PaymentsForClearingFees"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PaymentsForClearingFees" xlink:to="lab_efoi_PaymentsForClearingFees" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_OtherLEDProductsMember_89147df3-1413-4a43-9f95-7bcc9f3fad03_terseLabel_en-US" xlink:label="lab_efoi_OtherLEDProductsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other LED Products</link:label>
    <link:label id="lab_efoi_OtherLEDProductsMember_label_en-US" xlink:label="lab_efoi_OtherLEDProductsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other LED Products [Member]</link:label>
    <link:label id="lab_efoi_OtherLEDProductsMember_documentation_en-US" xlink:label="lab_efoi_OtherLEDProductsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other LED Products [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OtherLEDProductsMember" xlink:href="efoi-20210331.xsd#efoi_OtherLEDProductsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_OtherLEDProductsMember" xlink:to="lab_efoi_OtherLEDProductsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_AccumulatedInterestOnSubordinatedDebt_38b72397-0c5a-4306-bdb7-2cce83b64d4f_terseLabel_en-US" xlink:label="lab_efoi_AccumulatedInterestOnSubordinatedDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated interest on subordinated debt</link:label>
    <link:label id="lab_efoi_AccumulatedInterestOnSubordinatedDebt_label_en-US" xlink:label="lab_efoi_AccumulatedInterestOnSubordinatedDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Interest on Subordinated Debt</link:label>
    <link:label id="lab_efoi_AccumulatedInterestOnSubordinatedDebt_documentation_en-US" xlink:label="lab_efoi_AccumulatedInterestOnSubordinatedDebt" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Interest on Subordinated Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_AccumulatedInterestOnSubordinatedDebt" xlink:href="efoi-20210331.xsd#efoi_AccumulatedInterestOnSubordinatedDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_AccumulatedInterestOnSubordinatedDebt" xlink:to="lab_efoi_AccumulatedInterestOnSubordinatedDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt_11cc572a-2d84-4b5b-b994-febf1c753e91_terseLabel_en-US" xlink:label="lab_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest rate on convertible notes</link:label>
    <link:label id="lab_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt_label_en-US" xlink:label="lab_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Conversion, Original Debt, Interest Rate of Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtConversionOriginalDebtInterestRateOfDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt" xlink:to="lab_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree_9c28e1ae-8a18-45be-a547-626bc9b4edd6_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2023 to March 2024</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Payments, Due in Rolling Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree" xlink:to="lab_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_6580644f-0e62-4de1-8b4e-95d12cccf57a_terseLabel_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2021 to March 2022</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_label_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due Next Rolling Twelve Months</link:label>
    <link:label id="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_documentation_en-US" xlink:label="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due Next Rolling Twelve Months</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:to="lab_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SupplierConcentrationRiskMember_71b874ff-2e1f-4e1f-81e8-318f46351ed5_terseLabel_en-US" xlink:label="lab_us-gaap_SupplierConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplier concentration risk</link:label>
    <link:label id="lab_us-gaap_SupplierConcentrationRiskMember_label_en-US" xlink:label="lab_us-gaap_SupplierConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplier Concentration Risk [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplierConcentrationRiskMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SupplierConcentrationRiskMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SupplierConcentrationRiskMember" xlink:to="lab_us-gaap_SupplierConcentrationRiskMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_PaymentProtectionProgramCurrent_f208651e-b8f1-4d5e-832f-e1f631a563ad_terseLabel_en-US" xlink:label="lab_efoi_PaymentProtectionProgramCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">PPP loan</link:label>
    <link:label id="lab_efoi_PaymentProtectionProgramCurrent_label_en-US" xlink:label="lab_efoi_PaymentProtectionProgramCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment Protection Program, Current</link:label>
    <link:label id="lab_efoi_PaymentProtectionProgramCurrent_documentation_en-US" xlink:label="lab_efoi_PaymentProtectionProgramCurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment Protection Program, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentProtectionProgramCurrent" xlink:href="efoi-20210331.xsd#efoi_PaymentProtectionProgramCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_PaymentProtectionProgramCurrent" xlink:to="lab_efoi_PaymentProtectionProgramCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_9c9ab822-0c1d-42a4-835b-fdbbbf83e3c9_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock under employee stock option and stock purchase plans (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Shares, Employee Stock Purchase Plans</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFilerCategory_18d6bfa4-49d9-4dc8-b332-b54280e90aea_terseLabel_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Filer Category</link:label>
    <link:label id="lab_dei_EntityFilerCategory_label_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Filer Category</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityFilerCategory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory" xlink:to="lab_dei_EntityFilerCategory" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_6e95c8b1-300b-4fc7-a1e1-08417484d95d_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Summary of stock-based compensation expense</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockMember_9834c67a-63c2-4866-a001-eeb6f5739991_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_label_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember" xlink:to="lab_us-gaap_CommonStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_a710ce2d-890d-4fcb-8922-12af8404faf0_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductsAndServicesDomain_c19aea37-6025-41db-8563-a3bcc724c7c8_terseLabel_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:label id="lab_srt_ProductsAndServicesDomain_label_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductsAndServicesDomain" xlink:to="lab_srt_ProductsAndServicesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_7c0e8cd3-911e-497e-8645-0a7ff785d048_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Lived Tangible Asset [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseDiscountRate_6bef1e9c-3c40-4541-bf75-f1c1ae031848_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseDiscountRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease, discount rate</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseDiscountRate_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseDiscountRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Discount Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseDiscountRate" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseDiscountRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseDiscountRate" xlink:to="lab_us-gaap_LesseeOperatingLeaseDiscountRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskBenchmarkDomain_518ac54d-fb97-466c-acab-274c96cbba81_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskBenchmarkDomain_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_f742e18c-7105-444d-9c21-7168bfdce3be_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Risk free interest rate, maximum</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate, Maximum</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour_f5f1d019-d19d-4b86-a034-e20f7da25f53_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2024 to March 2025</link:label>
    <link:label id="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour_label_en-US" xlink:label="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessor, Operating Lease, Payments to be Received, Rolling Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour" xlink:to="lab_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConvertibleDebtMember_14e8d990-2334-41b7-9c5e-6cdd21fcfb84_terseLabel_en-US" xlink:label="lab_us-gaap_ConvertibleDebtMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Convertible Debt</link:label>
    <link:label id="lab_us-gaap_ConvertibleDebtMember_label_en-US" xlink:label="lab_us-gaap_ConvertibleDebtMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Convertible Debt [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertibleDebtMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertibleDebtMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConvertibleDebtMember" xlink:to="lab_us-gaap_ConvertibleDebtMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GeographicConcentrationRiskMember_886b3997-2a58-4823-b302-126d872491e9_terseLabel_en-US" xlink:label="lab_us-gaap_GeographicConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographic concentration risk</link:label>
    <link:label id="lab_us-gaap_GeographicConcentrationRiskMember_label_en-US" xlink:label="lab_us-gaap_GeographicConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Geographic Concentration Risk [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GeographicConcentrationRiskMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeographicConcentrationRiskMember" xlink:to="lab_us-gaap_GeographicConcentrationRiskMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_09be0482-0389-45ec-814e-75b7567cd6fe_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of property and equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_fed3afd3-a051-42fe-a976-c3c1be3df893_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplier [Axis]</link:label>
    <link:label id="lab_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_label_en-US" xlink:label="lab_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplier [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" xlink:to="lab_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesNewIssues_a72325b4-a8c8-4f7b-adf6-d68c6a0285a0_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Conversion of notes to stock (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesNewIssues_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Shares, New Issues</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesNewIssues" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseholdImprovementsMember_16cbbe66-10c5-4765-8a7a-65b36aa04afa_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseholdImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leasehold improvements</link:label>
    <link:label id="lab_us-gaap_LeaseholdImprovementsMember_label_en-US" xlink:label="lab_us-gaap_LeaseholdImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leasehold Improvements [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseholdImprovementsMember" xlink:to="lab_us-gaap_LeaseholdImprovementsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SalesRevenueNetMember_810d8e8e-79b2-4e75-830c-133a176bb2e1_terseLabel_en-US" xlink:label="lab_us-gaap_SalesRevenueNetMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_SalesRevenueNetMember_label_en-US" xlink:label="lab_us-gaap_SalesRevenueNetMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue Benchmark [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueNetMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SalesRevenueNetMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SalesRevenueNetMember" xlink:to="lab_us-gaap_SalesRevenueNetMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_OffshoreSupplierMember_0f70f38d-e824-4728-a047-0d9e5dd996de_terseLabel_en-US" xlink:label="lab_efoi_OffshoreSupplierMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Offshore Supplier</link:label>
    <link:label id="lab_efoi_OffshoreSupplierMember_label_en-US" xlink:label="lab_efoi_OffshoreSupplierMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Offshore Supplier [Member]</link:label>
    <link:label id="lab_efoi_OffshoreSupplierMember_documentation_en-US" xlink:label="lab_efoi_OffshoreSupplierMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Offshore Supplier</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OffshoreSupplierMember" xlink:href="efoi-20210331.xsd#efoi_OffshoreSupplierMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_OffshoreSupplierMember" xlink:to="lab_efoi_OffshoreSupplierMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_4fbd3d50-6846-4a21-ab00-e462baae854d_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest rate</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_92a12472-eaf8-4f1d-9671-ce28f4957fe2_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Conversion of notes to preferred stock (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Shares, Conversion of Convertible Securities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_95f636c4-4523-40c7-b5f7-011c209b0884_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">April 2024 to March 2025</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due in Rolling Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_792ee90b-b22a-4635-a5bc-43bc24dcb05e_terseLabel_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for doubtful accounts receivable</link:label>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_label_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Credit Loss Expense (Reversal)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:to="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WriteOffOfDeferredDebtIssuanceCost_907281b5-3776-417e-b1e2-b761324eaab0_terseLabel_en-US" xlink:label="lab_us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Write off of remaining issuance costs</link:label>
    <link:label id="lab_us-gaap_WriteOffOfDeferredDebtIssuanceCost_label_en-US" xlink:label="lab_us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Write off of Deferred Debt Issuance Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:to="lab_us-gaap_WriteOffOfDeferredDebtIssuanceCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_d943cf34-665f-4ee1-ae07-9e09e083c202_negatedLabel_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less: accumulated depreciation</link:label>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyLiabilityTable_4955e29f-6793-45a8-9fbb-a6ad71d15362_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyLiabilityTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranty Liability [Table]</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyLiabilityTable_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyLiabilityTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranty Liability [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyLiabilityTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyLiabilityTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyLiabilityTable" xlink:to="lab_us-gaap_ProductWarrantyLiabilityTable" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_15e77ec1-c10c-489a-bc76-0eb6c1e8a7cc_terseLabel_en-US" xlink:label="lab_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental Cash Flow Information Related to Leases</link:label>
    <link:label id="lab_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_label_en-US" xlink:label="lab_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental Cash Flow Information Related to Leases [Table Text Block]</link:label>
    <link:label id="lab_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_documentation_en-US" xlink:label="lab_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Supplemental Cash Flow Information Related to Leases</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" xlink:href="efoi-20210331.xsd#efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" xlink:to="lab_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_d636f938-67e6-4c7a-8533-a851c1cbe4d9_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net (decrease) increase in cash and restricted cash</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseRightOfUseAsset_5d0dbf42-bdba-49a1-9a5c-dfb4b7c6da3b_totalLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance lease assets, net</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseRightOfUseAsset_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Right-of-Use Asset, after Accumulated Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAsset" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseRightOfUseAsset" xlink:to="lab_us-gaap_FinanceLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_fcd918de-bac3-4246-83eb-278e2c14b1a4_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Future Maturities of Operating Lease Liabilities</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_535ec99a-898a-4a4d-819e-e2646d4fe302_terseLabel_en-US" xlink:label="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basis of presentation</link:label>
    <link:label id="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basis of Accounting, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:to="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod_73044422-649c-4661-95c1-6dccd7679aba_terseLabel_en-US" xlink:label="lab_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Annual facility fee, payment period</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod_label_en-US" xlink:label="lab_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Annual Facility Fee, Period</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod_documentation_en-US" xlink:label="lab_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Annual Facility Fee, Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityAnnualFacilityFeePeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod" xlink:to="lab_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_5dfd36f5-c6f0-47fb-850c-ec5fac0d82d3_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Margin added to borrowing rate</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Basis Spread on Variable Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_40209083-64ff-4657-860a-ab52540c11ca_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Risk-free interest rate</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventsAbstract_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsAbstract" xlink:to="lab_us-gaap_SubsequentEventsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_254ac55c-f5f0-4109-ba61-3b2a5f4aec50_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Canceled/forfeited (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringReserveCurrent_e3345bfd-f09a-4cc5-9f2f-266a7955a30d_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringReserveCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued restructuring</link:label>
    <link:label id="lab_us-gaap_RestructuringReserveCurrent_ff3d0562-4844-4f01-ae60-0f8e61973dd7_verboseLabel_en-US" xlink:label="lab_us-gaap_RestructuringReserveCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less, short-term restructuring liability</link:label>
    <link:label id="lab_us-gaap_RestructuringReserveCurrent_label_en-US" xlink:label="lab_us-gaap_RestructuringReserveCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Reserve, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserveCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringReserveCurrent" xlink:to="lab_us-gaap_RestructuringReserveCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_NotePurchaseAgreementMember_0b564014-0e22-4b69-a2ca-7866ddf3393e_terseLabel_en-US" xlink:label="lab_efoi_NotePurchaseAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Note Purchase Agreement</link:label>
    <link:label id="lab_efoi_NotePurchaseAgreementMember_label_en-US" xlink:label="lab_efoi_NotePurchaseAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Note Purchase Agreement [Member]</link:label>
    <link:label id="lab_efoi_NotePurchaseAgreementMember_documentation_en-US" xlink:label="lab_efoi_NotePurchaseAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Note Purchase Agreement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NotePurchaseAgreementMember" xlink:href="efoi-20210331.xsd#efoi_NotePurchaseAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_NotePurchaseAgreementMember" xlink:to="lab_efoi_NotePurchaseAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SaleOfStockNameOfTransactionDomain_b3adff49-1fc6-4e43-9c5e-9a5192f00598_terseLabel_en-US" xlink:label="lab_us-gaap_SaleOfStockNameOfTransactionDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale of Stock [Domain]</link:label>
    <link:label id="lab_us-gaap_SaleOfStockNameOfTransactionDomain_label_en-US" xlink:label="lab_us-gaap_SaleOfStockNameOfTransactionDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sale of Stock [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain" xlink:to="lab_us-gaap_SaleOfStockNameOfTransactionDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_41a490a3-a79f-4163-9ac8-3a9edf46aa65_terseLabel_en-US" xlink:label="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory costs</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_label_en-US" xlink:label="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Borrowing Capacity, Inventory Costs, Percent</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_documentation_en-US" xlink:label="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Borrowing Capacity, Inventory Costs, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" xlink:to="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockOptionMember_30b7d0d2-05be-48af-9e72-be9d2fe81ab8_terseLabel_en-US" xlink:label="lab_us-gaap_StockOptionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Option</link:label>
    <link:label id="lab_us-gaap_StockOptionMember_label_en-US" xlink:label="lab_us-gaap_StockOptionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Option [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockOptionMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockOptionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockOptionMember" xlink:to="lab_us-gaap_StockOptionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock_677bc390-7dfc-4347-ac6a-90fa4520f991_terseLabel_en-US" xlink:label="lab_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Supplemental Balance Sheet Information</link:label>
    <link:label id="lab_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock_label_en-US" xlink:label="lab_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Supplemental Balance Sheet Information [Table Text Block]</link:label>
    <link:label id="lab_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock_documentation_en-US" xlink:label="lab_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Supplemental Balance Sheet Information [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock" xlink:href="efoi-20210331.xsd#efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock" xlink:to="lab_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_f8155f57-050b-4fab-9b57-20fcad13cf9b_terseLabel_en-US" xlink:label="lab_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shareholders' Equity</link:label>
    <link:label id="lab_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_label_en-US" xlink:label="lab_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shareholders' Equity and Share-based Payments [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:to="lab_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Revenues_b73e85f0-c10f-4eb3-a7e7-4e553b672c81_terseLabel_en-US" xlink:label="lab_us-gaap_Revenues" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net sales</link:label>
    <link:label id="lab_us-gaap_Revenues_label_en-US" xlink:label="lab_us-gaap_Revenues" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenues</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Revenues"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Revenues" xlink:to="lab_us-gaap_Revenues" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementClassOfStockAxis_8aec00b6-e49b-40e8-8d76-f8765e9236fe_terseLabel_en-US" xlink:label="lab_us-gaap_StatementClassOfStockAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementClassOfStockAxis_label_en-US" xlink:label="lab_us-gaap_StatementClassOfStockAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementClassOfStockAxis" xlink:to="lab_us-gaap_StatementClassOfStockAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_988e7ba9-cb6d-4097-9d0e-bed984c70363_terseLabel_en-US" xlink:label="lab_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from sale of common stock</link:label>
    <link:label id="lab_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_label_en-US" xlink:label="lab_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from the Issuance of Common Stock and Warrants, Net of Issuance Costs</link:label>
    <link:label id="lab_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_documentation_en-US" xlink:label="lab_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from the Issuance of Common Stock and Warrants, Net of Issuance Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" xlink:href="efoi-20210331.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" xlink:to="lab_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_764e27fc-b6d0-46a6-bb08-54c53db1ba42_periodStartLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and restricted cash, beginning of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_743fc986-0b3f-40e7-984b-99b2913e518f_periodEndLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and restricted cash, end of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_a466515d-15bb-4bda-92e0-4f0fc9e0c878_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash and restricted cash</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityCurrent_d45f213f-83a3-427f-8041-daf59c1a00b5_terseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance lease liabilities</link:label>
    <link:label id="lab_us-gaap_FinanceLeaseLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_FinanceLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finance Lease, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeaseLiabilityCurrent" xlink:to="lab_us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermPurchaseCommitmentTable_66e4faac-9a75-4e12-8cba-8054809190c7_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermPurchaseCommitmentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Purchase Commitment [Table]</link:label>
    <link:label id="lab_us-gaap_LongTermPurchaseCommitmentTable_label_en-US" xlink:label="lab_us-gaap_LongTermPurchaseCommitmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Purchase Commitment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermPurchaseCommitmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentTable" xlink:to="lab_us-gaap_LongTermPurchaseCommitmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_LocalPhoneNumber_8d6bb03c-1089-4687-8ac8-06a813a49e30_terseLabel_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Local Phone Number</link:label>
    <link:label id="lab_dei_LocalPhoneNumber_label_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_LocalPhoneNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber" xlink:to="lab_dei_LocalPhoneNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration_cac1c1ec-fc07-4824-9a33-8f837c7388d5_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating loss, subject to expiration</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Operating Loss Carryforwards, Subject to Expiration</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration" xlink:to="lab_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_AustinFacilityMember_f2a653b4-7439-4239-b17c-817358ad2ddd_terseLabel_en-US" xlink:label="lab_efoi_AustinFacilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Austin Facility</link:label>
    <link:label id="lab_efoi_AustinFacilityMember_label_en-US" xlink:label="lab_efoi_AustinFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Austin Facility [Member]</link:label>
    <link:label id="lab_efoi_AustinFacilityMember_documentation_en-US" xlink:label="lab_efoi_AustinFacilityMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Austin Facility</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_AustinFacilityMember" xlink:href="efoi-20210331.xsd#efoi_AustinFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_AustinFacilityMember" xlink:to="lab_efoi_AustinFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfStockByClassTable_b545ff0f-f85f-43a6-b593-0029c5908297_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfStockByClassTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Stock by Class [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfStockByClassTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfStockByClassTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Stock by Class [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfStockByClassTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable" xlink:to="lab_us-gaap_ScheduleOfStockByClassTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_af17c594-75dc-4529-8b10-7e287305bc69_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Level 3 Fair Value Reconciliation</link:label>
    <link:label id="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:to="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_6e256380-482b-4aeb-a009-885a1cced571_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_label_en-US" xlink:label="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:to="lab_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentCarryingAmount_2b399639-bd36-4a15-940e-17f43e34f892_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentCarryingAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total liability, net of discount and financing fees</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentCarryingAmount_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentCarryingAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentCarryingAmount" xlink:to="lab_us-gaap_DebtInstrumentCarryingAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Depreciation_82b3787e-212f-4a73-88bc-2cc65ff4d67b_terseLabel_en-US" xlink:label="lab_us-gaap_Depreciation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation</link:label>
    <link:label id="lab_us-gaap_Depreciation_label_en-US" xlink:label="lab_us-gaap_Depreciation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Depreciation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Depreciation" xlink:to="lab_us-gaap_Depreciation" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressAddressLine1_d6511c83-1744-4742-b9f2-58554df76b4d_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine1_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressAddressLine1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1" xlink:to="lab_dei_EntityAddressAddressLine1" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressAddressLine2_0ca46d05-950f-4296-92ff-d5c3bf9a37ba_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line Two</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine2_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine2" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressAddressLine2"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine2" xlink:to="lab_dei_EntityAddressAddressLine2" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PrimeRateMember_3932b0f5-1c97-4fa1-b06d-93d95da6cfcc_terseLabel_en-US" xlink:label="lab_us-gaap_PrimeRateMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prime Rate</link:label>
    <link:label id="lab_us-gaap_PrimeRateMember_label_en-US" xlink:label="lab_us-gaap_PrimeRateMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prime Rate [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrimeRateMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrimeRateMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrimeRateMember" xlink:to="lab_us-gaap_PrimeRateMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_64d58813-edb7-4b1f-8764-0081d71c7378_terseLabel_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_label_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany" xlink:to="lab_dei_EntityEmergingGrowthCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConvertiblePreferredStockMember_4679d227-84ec-47da-97fa-7907663867b3_terseLabel_en-US" xlink:label="lab_us-gaap_ConvertiblePreferredStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Series A Convertible Preferred Stock</link:label>
    <link:label id="lab_us-gaap_ConvertiblePreferredStockMember_139b8b15-6bf5-4803-9e97-4b2bbf41f8a6_verboseLabel_en-US" xlink:label="lab_us-gaap_ConvertiblePreferredStockMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Convertible securities</link:label>
    <link:label id="lab_us-gaap_ConvertiblePreferredStockMember_label_en-US" xlink:label="lab_us-gaap_ConvertiblePreferredStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Convertible Preferred Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConvertiblePreferredStockMember" xlink:to="lab_us-gaap_ConvertiblePreferredStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_8c2b772b-0316-48ee-b1ae-df92efc30daa_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum borrowing capacity on line of credit</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_DistributorToTheU.S.NavyMember_32e5ea2b-4d77-4bdc-8847-4aa171fd1f6a_terseLabel_en-US" xlink:label="lab_efoi_DistributorToTheU.S.NavyMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Distributor To The U.S. Navy</link:label>
    <link:label id="lab_efoi_DistributorToTheU.S.NavyMember_label_en-US" xlink:label="lab_efoi_DistributorToTheU.S.NavyMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Distributor To The U.S. Navy [Member]</link:label>
    <link:label id="lab_efoi_DistributorToTheU.S.NavyMember_documentation_en-US" xlink:label="lab_efoi_DistributorToTheU.S.NavyMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Distributor To The U.S. Navy [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheU.S.NavyMember" xlink:href="efoi-20210331.xsd#efoi_DistributorToTheU.S.NavyMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_DistributorToTheU.S.NavyMember" xlink:to="lab_efoi_DistributorToTheU.S.NavyMember" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_5af96a6c-21db-483e-9aec-e32891469e5e_terseLabel_en-US" xlink:label="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, net orderly liquidation value</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_label_en-US" xlink:label="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Borrowing Capacity, Inventory Value, Percent</link:label>
    <link:label id="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_documentation_en-US" xlink:label="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Borrowing Capacity, Inventory Value, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" xlink:to="lab_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AwardTypeAxis_5ab4d9e9-d571-4bcc-9443-4497f86cff0d_terseLabel_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AwardTypeAxis_label_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis" xlink:to="lab_us-gaap_AwardTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_3ab0ad7b-afe2-49bb-a669-5119bdc5f49e_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Grant Date Fair Value</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_d0ade21e-1711-459b-bf00-73e7dafc92e6_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock upon the exercise of warrants (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_99856657-1f0e-431b-8045-962aa99e92bf_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warrants exercised (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Non-Option Equity Instruments, Exercised</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MaximumMember_df2216f2-f3d8-4321-b02c-cb6120d622d0_terseLabel_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum</link:label>
    <link:label id="lab_srt_MaximumMember_label_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember" xlink:to="lab_srt_MaximumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_2702fbe6-137e-47e5-8942-34d4b3131be1_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, authorized (in shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesAuthorized" xlink:to="lab_us-gaap_PreferredStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedCash_2c269364-30ed-4d51-bb71-af961b46f3a7_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCash" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted cash held in other assets</link:label>
    <link:label id="lab_us-gaap_RestrictedCash_label_en-US" xlink:label="lab_us-gaap_RestrictedCash" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Cash</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCash" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCash"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCash" xlink:to="lab_us-gaap_RestrictedCash" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsMember_fe11bec6-fa95-4a37-aeea-295214fcd23c_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Deficit</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsMember_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember" xlink:to="lab_us-gaap_RetainedEarningsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesOutstanding_b2fe756f-29c7-4f46-9ccf-f445fcb7c0f6_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesOutstanding" xlink:to="lab_us-gaap_PreferredStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_29a24b81-f1aa-40e4-a21b-e3170590d13c_terseLabel_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basis of Presentation and Summary of Significant Accounting Policies</link:label>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_label_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Significant Accounting Policies [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_ebce2df3-8bb9-4a5c-bd06-7bf66864afc6_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash used in investing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_cf0d55f8-aa77-45ca-91b8-b0d7b45bf200_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Remaining Contractual Life (in years)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_e1f7eed7-3f70-4ef6-9b90-2f3dd4eda1bd_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding at end of period</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_46618ab4-67a9-4dd5-a0f0-8befedd55c59_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_fc38c0eb-bc9c-4579-b528-b070c0fd29bc_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_9c44115c-f8a6-4a48-a072-5a7fdee6599e_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Restructuring Reserve by Type of Cost</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Restructuring Reserve by Type of Cost [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:to="lab_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_TradingSymbol_fcb73c2a-994f-4b33-a6eb-ca6b47f154bf_terseLabel_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Symbol</link:label>
    <link:label id="lab_dei_TradingSymbol_label_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Symbol</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_TradingSymbol"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol" xlink:to="lab_dei_TradingSymbol" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_06f27a21-710c-45a7-a8de-1c030f522463_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Exercisable at period end (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_6246f938-d6ed-423f-b238-517bebf0109f_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property and Equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByBalanceSheetGroupingTable_43460659-24f9-4a9a-980c-86e7dce386c1_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, by Balance Sheet Grouping [Table]</link:label>
    <link:label id="lab_us-gaap_FairValueByBalanceSheetGroupingTable_label_en-US" xlink:label="lab_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, by Balance Sheet Grouping [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:to="lab_us-gaap_FairValueByBalanceSheetGroupingTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualPayments_7da5b251-6be9-4060-b2d3-3b2110e211eb_negatedLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualPayments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">In kind settlements made during the period</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualPayments_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualPayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard Product Warranty Accrual, Decrease for Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualPayments" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StandardProductWarrantyAccrualPayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyAccrualPayments" xlink:to="lab_us-gaap_StandardProductWarrantyAccrualPayments" xlink:type="arc" order="1"/>
    <link:label id="lab_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember_d37c5b4c-5fa4-47e9-909c-f85dfd29f728_terseLabel_en-US" xlink:label="lab_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commercial LEDFL Tubular LED Lamps (Excluding Battery Backup TLED), Troffer Luminaires, And Certain Globe Lights</link:label>
    <link:label id="lab_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember_label_en-US" xlink:label="lab_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commercial LEDFL Tubular LED Lamps (Excluding Battery Backup TLED), Troffer Luminaires, And Certain Globe Lights [Member]</link:label>
    <link:label id="lab_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember_documentation_en-US" xlink:label="lab_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commercial LEDFL Tubular LED Lamps (Excluding Battery Backup TLED), Troffer Luminaires, And Certain Globe Lights [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember" xlink:href="efoi-20210331.xsd#efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember" xlink:to="lab_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PrivatePlacementMember_45a53f1a-56ce-4692-8ab6-857063ea0424_terseLabel_en-US" xlink:label="lab_us-gaap_PrivatePlacementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Placement Agent Warrants</link:label>
    <link:label id="lab_us-gaap_PrivatePlacementMember_label_en-US" xlink:label="lab_us-gaap_PrivatePlacementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Private Placement [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrivatePlacementMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrivatePlacementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrivatePlacementMember" xlink:to="lab_us-gaap_PrivatePlacementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FacilityClosingMember_fb58a922-9c98-42be-823b-8ec88b5d8164_terseLabel_en-US" xlink:label="lab_us-gaap_FacilityClosingMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring liability</link:label>
    <link:label id="lab_us-gaap_FacilityClosingMember_label_en-US" xlink:label="lab_us-gaap_FacilityClosingMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Facility Closing [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FacilityClosingMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FacilityClosingMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FacilityClosingMember" xlink:to="lab_us-gaap_FacilityClosingMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_label_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquipmentMember_af85cdd8-f435-4491-8dfb-7cbf55f725d2_terseLabel_en-US" xlink:label="lab_us-gaap_EquipmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equipment</link:label>
    <link:label id="lab_us-gaap_EquipmentMember_label_en-US" xlink:label="lab_us-gaap_EquipmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equipment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquipmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquipmentMember" xlink:to="lab_us-gaap_EquipmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_eebdcd7a-760f-4ef2-b36b-472f53993637_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityShellCompany_f3f8956f-ef83-4a47-aa92-e70e8a9043af_terseLabel_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Shell Company</link:label>
    <link:label id="lab_dei_EntityShellCompany_label_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Shell Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityShellCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityShellCompany" xlink:to="lab_dei_EntityShellCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease_611643b7-6cf3-414c-8ce5-f62dfe3c2ce0_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Issuance of common stock and warrants (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Issued During Period, Shares, Period Increase (Decrease)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementsRecurringMember_b2523a87-fb54-4cd8-a2f6-776bd0376bca_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsRecurringMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Recurring</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsRecurringMember_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsRecurringMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Fair Value, Recurring [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsRecurringMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsRecurringMember" xlink:to="lab_us-gaap_FairValueMeasurementsRecurringMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_6857d914-b33a-4030-af45-9d81b6f2ccda_negatedLabel_en-US" xlink:label="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock withheld in lieu of income tax withholding on vesting of restricted stock units (in shares)</link:label>
    <link:label id="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_d04078b3-1901-4a20-9341-9e9be71f0f35_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested and expected to vest at period end (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_694801a7-bcfd-422d-be1d-b5a4d7d08396_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expired (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangements by Share-based Payment Award, Options, Expirations in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_337ead03-56e8-430d-8447-da7799f14c26_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recent accounting pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_b1de03a4-7b3f-4f92-8ef3-4d396d1fca8c_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:type="arc" order="1"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>9
<FILENAME>efoi-20210331_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2021 Workiva-->
<!--r:e2a4800e-2bee-4a0f-9ce7-c0f26b88321d,g:b231b6ec-e457-4087-8af0-4631d4401d22-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CoverPage" xlink:type="simple" xlink:href="efoi-20210331.xsd#CoverPage"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CoverPage" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_716947b3-ba56-42ec-a62a-715055dda043" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentType"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_DocumentType_716947b3-ba56-42ec-a62a-715055dda043" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentQuarterlyReport_6537dd4b-64ee-44f0-ba38-bb1fe76f6b90" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentQuarterlyReport"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_DocumentQuarterlyReport_6537dd4b-64ee-44f0-ba38-bb1fe76f6b90" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_e501c655-6137-4c8b-8147-a818b231b09a" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentPeriodEndDate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_DocumentPeriodEndDate_e501c655-6137-4c8b-8147-a818b231b09a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport_7f15452f-f6fe-4534-9397-66371d86cc3e" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentTransitionReport"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_DocumentTransitionReport_7f15452f-f6fe-4534-9397-66371d86cc3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber_8fe98902-6898-4b81-afea-30e361377558" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityFileNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityFileNumber_8fe98902-6898-4b81-afea-30e361377558" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_9dd1953a-4a73-4fee-a6ec-4aa07ba8ba66" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityRegistrantName"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityRegistrantName_9dd1953a-4a73-4fee-a6ec-4aa07ba8ba66" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode_703327a3-bbf0-43a6-bcb4-a123b7d234d9" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityIncorporationStateCountryCode_703327a3-bbf0-43a6-bcb4-a123b7d234d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_4e2de84c-397f-43b3-8ce2-f544c7b8f50d" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityTaxIdentificationNumber_4e2de84c-397f-43b3-8ce2-f544c7b8f50d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1_00e46959-8f38-421a-b567-354e1c6797ae" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressAddressLine1"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityAddressAddressLine1_00e46959-8f38-421a-b567-354e1c6797ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine2_7dbfa0ca-1f39-41c0-b074-a95254f4e3ff" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressAddressLine2"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityAddressAddressLine2_7dbfa0ca-1f39-41c0-b074-a95254f4e3ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown_a6e538a8-5d95-4e38-a8dc-07d86c1bcd62" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressCityOrTown"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityAddressCityOrTown_a6e538a8-5d95-4e38-a8dc-07d86c1bcd62" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince_2c1d7c7c-9b30-4437-9dec-9e074a9ad14b" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressStateOrProvince"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityAddressStateOrProvince_2c1d7c7c-9b30-4437-9dec-9e074a9ad14b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode_83858b47-4999-4d61-9c09-a0ac39a0ab01" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityAddressPostalZipCode"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityAddressPostalZipCode_83858b47-4999-4d61-9c09-a0ac39a0ab01" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode_3b42a8cc-6bca-4ddb-931f-694b27708c2f" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CityAreaCode"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_CityAreaCode_3b42a8cc-6bca-4ddb-931f-694b27708c2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber_9269b42b-769f-452c-b549-6eaa33126e2e" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_LocalPhoneNumber"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_LocalPhoneNumber_9269b42b-769f-452c-b549-6eaa33126e2e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle_b897c251-6b64-4243-a1da-34eed25d8497" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_Security12bTitle"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_Security12bTitle_b897c251-6b64-4243-a1da-34eed25d8497" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol_377eb545-0219-48c0-bf7d-1a2fc905757f" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_TradingSymbol"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_TradingSymbol_377eb545-0219-48c0-bf7d-1a2fc905757f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName_146af34a-4859-43b9-a775-399e6e88b0e0" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_SecurityExchangeName"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_SecurityExchangeName_146af34a-4859-43b9-a775-399e6e88b0e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus_6c4451d3-4110-4d1c-8ce0-d352622f30eb" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCurrentReportingStatus"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityCurrentReportingStatus_6c4451d3-4110-4d1c-8ce0-d352622f30eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent_18efa5c2-49c1-46df-9a55-d94987c69cef" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityInteractiveDataCurrent_18efa5c2-49c1-46df-9a55-d94987c69cef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory_b0cf744a-896b-4d88-a9e6-396140263a59" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityFilerCategory"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityFilerCategory_b0cf744a-896b-4d88-a9e6-396140263a59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness_e5b53e43-b842-4b7a-92ba-d9733de4f678" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntitySmallBusiness"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntitySmallBusiness_e5b53e43-b842-4b7a-92ba-d9733de4f678" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany_e7fb5c32-6a61-439f-b659-bb1228ef33b5" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityEmergingGrowthCompany_e7fb5c32-6a61-439f-b659-bb1228ef33b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany_1ce529c2-bb5a-4e66-894b-04490ac67efc" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityShellCompany"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityShellCompany_1ce529c2-bb5a-4e66-894b-04490ac67efc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_1dd26d74-5529-463a-9b20-1e45f1e4154a" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_1dd26d74-5529-463a-9b20-1e45f1e4154a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_19ff7d1f-206d-4389-b5b5-64d0d745ded7" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_EntityCentralIndexKey_19ff7d1f-206d-4389-b5b5-64d0d745ded7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate_76f4bcca-d5c3-467a-a864-0d0ee1ce16b4" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_CurrentFiscalYearEndDate_76f4bcca-d5c3-467a-a864-0d0ee1ce16b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus_293d22f7-c56a-43e7-9043-40a26c682397" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentFiscalYearFocus"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_DocumentFiscalYearFocus_293d22f7-c56a-43e7-9043-40a26c682397" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus_8129b7fc-4509-458b-a8f9-4675b836a144" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_DocumentFiscalPeriodFocus_8129b7fc-4509-458b-a8f9-4675b836a144" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_9c9420a0-fa6d-4985-b8e2-325aa574ca17" xlink:href="https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_b0628e60-e865-42bc-aeec-60ecb79beb6d" xlink:to="loc_dei_AmendmentFlag_9c9420a0-fa6d-4985-b8e2-325aa574ca17" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedBalanceSheets"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_8719e3a1-2e5c-4c02-af4e-cdb0790ac729" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_0f544e8a-797f-4b10-b07d-90a6d24667a1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_8719e3a1-2e5c-4c02-af4e-cdb0790ac729" xlink:to="loc_us-gaap_AssetsAbstract_0f544e8a-797f-4b10-b07d-90a6d24667a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_27c2b67e-a185-42ab-bae7-a0c4a4f64f1e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_0f544e8a-797f-4b10-b07d-90a6d24667a1" xlink:to="loc_us-gaap_AssetsCurrentAbstract_27c2b67e-a185-42ab-bae7-a0c4a4f64f1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_91573580-3edb-44c1-a683-c549d2c35eb4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_27c2b67e-a185-42ab-bae7-a0c4a4f64f1e" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_91573580-3edb-44c1-a683-c549d2c35eb4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_75f5aff2-2977-4d42-a406-3272b7357007" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_27c2b67e-a185-42ab-bae7-a0c4a4f64f1e" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_75f5aff2-2977-4d42-a406-3272b7357007" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_0c1adf2a-4b3c-43ea-a17b-00b6ad3af313" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_27c2b67e-a185-42ab-bae7-a0c4a4f64f1e" xlink:to="loc_us-gaap_InventoryNet_0c1adf2a-4b3c-43ea-a17b-00b6ad3af313" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepositsAssetsCurrent_5d792774-8eeb-4b49-abce-4cf2bad794a8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DepositsAssetsCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_27c2b67e-a185-42ab-bae7-a0c4a4f64f1e" xlink:to="loc_us-gaap_DepositsAssetsCurrent_5d792774-8eeb-4b49-abce-4cf2bad794a8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_268c2469-cce7-46ba-aae4-cd46aa4cbca3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_27c2b67e-a185-42ab-bae7-a0c4a4f64f1e" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_268c2469-cce7-46ba-aae4-cd46aa4cbca3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_2cc5150e-1069-4406-8b36-4c9b1669efc8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AssetsCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_27c2b67e-a185-42ab-bae7-a0c4a4f64f1e" xlink:to="loc_us-gaap_AssetsCurrent_2cc5150e-1069-4406-8b36-4c9b1669efc8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_f5fba42d-f7d0-4106-8bfa-fe0166f4a84e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_0f544e8a-797f-4b10-b07d-90a6d24667a1" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_f5fba42d-f7d0-4106-8bfa-fe0166f4a84e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_db4c9404-b33a-4c50-9eae-b1ebaafee52a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_0f544e8a-797f-4b10-b07d-90a6d24667a1" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_db4c9404-b33a-4c50-9eae-b1ebaafee52a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseRightOfUseAsset_4e1165f6-8bd5-4713-81fe-96b4bb6a08f5" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_0f544e8a-797f-4b10-b07d-90a6d24667a1" xlink:to="loc_efoi_RestructuredOperatingLeaseRightOfUseAsset_4e1165f6-8bd5-4713-81fe-96b4bb6a08f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_80552fac-3ce3-4417-9153-0b8282fc27e3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Assets"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_0f544e8a-797f-4b10-b07d-90a6d24667a1" xlink:to="loc_us-gaap_Assets_80552fac-3ce3-4417-9153-0b8282fc27e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAbstract_6d68fa02-1b7f-4686-938c-cd752df319e3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_8719e3a1-2e5c-4c02-af4e-cdb0790ac729" xlink:to="loc_us-gaap_LiabilitiesAbstract_6d68fa02-1b7f-4686-938c-cd752df319e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_6d68fa02-1b7f-4686-938c-cd752df319e3" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_76dfbe04-0103-4662-beca-63910d03813f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_us-gaap_AccountsPayableCurrent_76dfbe04-0103-4662-beca-63910d03813f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_9bba00ca-72f3-42e4-875a-63de43149934" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_9bba00ca-72f3-42e4-875a-63de43149934" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedProfessionalFeesCurrent_f92187cf-adfd-42f9-b68f-879dfb6158d9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedProfessionalFeesCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_us-gaap_AccruedProfessionalFeesCurrent_f92187cf-adfd-42f9-b68f-879dfb6158d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedEmployeeBenefitsCurrent_e287c3b0-8565-43d5-9979-3927f100e85d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedEmployeeBenefitsCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_us-gaap_AccruedEmployeeBenefitsCurrent_e287c3b0-8565-43d5-9979-3927f100e85d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedSalesCommissionCurrent_31a0bf45-c1c8-4917-ad4b-e71b60d88b97" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccruedSalesCommissionCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_us-gaap_AccruedSalesCommissionCurrent_31a0bf45-c1c8-4917-ad4b-e71b60d88b97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveCurrent_0bed04b3-4448-40fb-9e31-6d74b2325588" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserveCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_us-gaap_RestructuringReserveCurrent_0bed04b3-4448-40fb-9e31-6d74b2325588" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualCurrent_3a96959b-9b2f-4f35-85db-e9080fce6c7c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StandardProductWarrantyAccrualCurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualCurrent_3a96959b-9b2f-4f35-85db-e9080fce6c7c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_96840d4e-132a-4d5e-89b4-782368c68b88" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_96840d4e-132a-4d5e-89b4-782368c68b88" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_fc13f843-c366-47c1-a0d7-f07546d39373" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_fc13f843-c366-47c1-a0d7-f07546d39373" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseLiabilityCurrent_67a0082e-1b6a-414c-9f81-512546a55e8e" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_efoi_RestructuredOperatingLeaseLiabilityCurrent_67a0082e-1b6a-414c-9f81-512546a55e8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityCurrent_20cbed4c-19bb-4bdf-824d-54a2c2f1cb0d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityCurrent"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_us-gaap_FinanceLeaseLiabilityCurrent_20cbed4c-19bb-4bdf-824d-54a2c2f1cb0d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentProtectionProgramCurrent_5c1af60d-37b5-430f-9c3f-479bfd484334" xlink:href="efoi-20210331.xsd#efoi_PaymentProtectionProgramCurrent"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_efoi_PaymentProtectionProgramCurrent_5c1af60d-37b5-430f-9c3f-479bfd484334" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LinesOfCreditCurrent_1b726fef-fff9-4674-b409-54799430b287" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LinesOfCreditCurrent"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_us-gaap_LinesOfCreditCurrent_1b726fef-fff9-4674-b409-54799430b287" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_46cd2ed7-79b4-45c2-be3d-3fda12007313" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_77fafa3c-90ad-475f-8ad3-b5f3c01f29ed" xlink:to="loc_us-gaap_LiabilitiesCurrent_46cd2ed7-79b4-45c2-be3d-3fda12007313" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_b647fd17-b087-4fa1-9afd-e5476593ebe6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_6d68fa02-1b7f-4686-938c-cd752df319e3" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_b647fd17-b087-4fa1-9afd-e5476593ebe6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_3775e837-4e3c-4885-90d9-dfdb5f883dd7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_6d68fa02-1b7f-4686-938c-cd752df319e3" xlink:to="loc_us-gaap_FinanceLeaseLiabilityNoncurrent_3775e837-4e3c-4885-90d9-dfdb5f883dd7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentProtectionProgramNoncurrent_fac56f7a-05ec-4d5b-9159-0b235bed2387" xlink:href="efoi-20210331.xsd#efoi_PaymentProtectionProgramNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_6d68fa02-1b7f-4686-938c-cd752df319e3" xlink:to="loc_efoi_PaymentProtectionProgramNoncurrent_fac56f7a-05ec-4d5b-9159-0b235bed2387" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_c0244c28-1557-4038-a64a-6e79f818dbf4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Liabilities"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_6d68fa02-1b7f-4686-938c-cd752df319e3" xlink:to="loc_us-gaap_Liabilities_c0244c28-1557-4038-a64a-6e79f818dbf4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract_b242ecf0-ad44-47c8-8a26-8ea3404df024" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_8719e3a1-2e5c-4c02-af4e-cdb0790ac729" xlink:to="loc_us-gaap_StockholdersEquityAbstract_b242ecf0-ad44-47c8-8a26-8ea3404df024" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_3e1570e7-17c3-4de1-b163-c986d3927d21" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_b242ecf0-ad44-47c8-8a26-8ea3404df024" xlink:to="loc_us-gaap_PreferredStockValue_3e1570e7-17c3-4de1-b163-c986d3927d21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_56b7c5e8-e798-42c1-9b2c-4f608fd36233" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_b242ecf0-ad44-47c8-8a26-8ea3404df024" xlink:to="loc_us-gaap_CommonStockValue_56b7c5e8-e798-42c1-9b2c-4f608fd36233" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_4b90b9c3-74e9-4449-b672-3fc403b426ad" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_b242ecf0-ad44-47c8-8a26-8ea3404df024" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_4b90b9c3-74e9-4449-b672-3fc403b426ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_3c3d7c75-d69c-4d64-9b37-d8952726b3c2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_b242ecf0-ad44-47c8-8a26-8ea3404df024" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_3c3d7c75-d69c-4d64-9b37-d8952726b3c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_4f0373ec-1cc7-428d-b7b4-382541928a6b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_b242ecf0-ad44-47c8-8a26-8ea3404df024" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_4f0373ec-1cc7-428d-b7b4-382541928a6b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_b4fe5139-307d-4ba7-85ef-572a4ecd8f6d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_b242ecf0-ad44-47c8-8a26-8ea3404df024" xlink:to="loc_us-gaap_StockholdersEquity_b4fe5139-307d-4ba7-85ef-572a4ecd8f6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_8161ed0b-0195-433e-a6ef-b8e5bb82032c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_8719e3a1-2e5c-4c02-af4e-cdb0790ac729" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_8161ed0b-0195-433e-a6ef-b8e5bb82032c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedBalanceSheetsParentheticals"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_4b1444e4-7769-4362-ba95-c4aef7fdbc49" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_d9a00cc1-6c05-49bb-8d7e-06f89c89ceb4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_4b1444e4-7769-4362-ba95-c4aef7fdbc49" xlink:to="loc_us-gaap_StatementTable_d9a00cc1-6c05-49bb-8d7e-06f89c89ceb4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_2587c698-52ae-43a2-8cb8-41438bec9480" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_d9a00cc1-6c05-49bb-8d7e-06f89c89ceb4" xlink:to="loc_us-gaap_StatementClassOfStockAxis_2587c698-52ae-43a2-8cb8-41438bec9480" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_ebeb2597-df6b-4058-bc56-5a8b05ce0e56" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_2587c698-52ae-43a2-8cb8-41438bec9480" xlink:to="loc_us-gaap_ClassOfStockDomain_ebeb2597-df6b-4058-bc56-5a8b05ce0e56" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_a95aed72-72da-4195-893d-624d8911d82e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockDomain_ebeb2597-df6b-4058-bc56-5a8b05ce0e56" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_a95aed72-72da-4195-893d-624d8911d82e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_d9a00cc1-6c05-49bb-8d7e-06f89c89ceb4" xlink:to="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_43fca0c2-8b00-4b83-b4da-97521a139bba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_43fca0c2-8b00-4b83-b4da-97521a139bba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_3e6a5389-0bd2-4b9c-9d71-c7cc3ab43783" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_3e6a5389-0bd2-4b9c-9d71-c7cc3ab43783" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_966433dd-d332-4077-a5a3-05813bf5b5b5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_966433dd-d332-4077-a5a3-05813bf5b5b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued_e3f4d94b-5a8b-4f8b-87ff-4c3d2294a7cf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_PreferredStockSharesIssued_e3f4d94b-5a8b-4f8b-87ff-4c3d2294a7cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_19054280-c87e-49da-a779-845c11d20f4d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_PreferredStockSharesOutstanding_19054280-c87e-49da-a779-845c11d20f4d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_288d3471-3cf0-410c-81fb-47c6238b7a3f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_288d3471-3cf0-410c-81fb-47c6238b7a3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_af55d5cf-5ec7-49e7-a4f5-b5155b1d8145" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_af55d5cf-5ec7-49e7-a4f5-b5155b1d8145" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_d418b1cc-3cb7-4e0f-b1db-ae12ce295800" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_CommonStockSharesIssued_d418b1cc-3cb7-4e0f-b1db-ae12ce295800" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_81da9a82-8675-4ec6-a406-f086d88054b3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_571d52a7-bdff-4317-a522-e621fc251954" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_81da9a82-8675-4ec6-a406-f086d88054b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofOperationsUnaudited"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract_a4fef2fe-4cea-4091-8253-6c639c217d28" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_9b0d1228-a405-4d2a-995b-22d78d6b93d1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Revenues"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_a4fef2fe-4cea-4091-8253-6c639c217d28" xlink:to="loc_us-gaap_Revenues_9b0d1228-a405-4d2a-995b-22d78d6b93d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_227a42a5-fec2-428b-9112-141e0ec728c9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_a4fef2fe-4cea-4091-8253-6c639c217d28" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_227a42a5-fec2-428b-9112-141e0ec728c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_b1b9596c-9e42-49f7-849e-404af8d4d57e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_a4fef2fe-4cea-4091-8253-6c639c217d28" xlink:to="loc_us-gaap_GrossProfit_b1b9596c-9e42-49f7-849e-404af8d4d57e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpensesAbstract_28d4a7ef-73e2-4039-836f-66bf7936b32e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingExpensesAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_a4fef2fe-4cea-4091-8253-6c639c217d28" xlink:to="loc_us-gaap_OperatingExpensesAbstract_28d4a7ef-73e2-4039-836f-66bf7936b32e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_a1c6ad52-f2de-49d1-8172-cf0d0b612072" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_28d4a7ef-73e2-4039-836f-66bf7936b32e" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_a1c6ad52-f2de-49d1-8172-cf0d0b612072" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_e5286fd0-3584-4335-8bf6-d35b37b31a87" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_28d4a7ef-73e2-4039-836f-66bf7936b32e" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_e5286fd0-3584-4335-8bf6-d35b37b31a87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCosts_a27c6ba4-feb1-4787-a545-08e7878be7cb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringCosts"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_28d4a7ef-73e2-4039-836f-66bf7936b32e" xlink:to="loc_us-gaap_RestructuringCosts_a27c6ba4-feb1-4787-a545-08e7878be7cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingExpenses_fa3983ef-68df-4359-89bc-bd74467f1032" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingExpenses"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_28d4a7ef-73e2-4039-836f-66bf7936b32e" xlink:to="loc_us-gaap_OperatingExpenses_fa3983ef-68df-4359-89bc-bd74467f1032" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_ed41f9e7-ca2d-4faa-98d1-07b0ccacf52e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_a4fef2fe-4cea-4091-8253-6c639c217d28" xlink:to="loc_us-gaap_OperatingIncomeLoss_ed41f9e7-ca2d-4faa-98d1-07b0ccacf52e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIncomeAndExpensesAbstract_34690de9-919c-4b3c-a8ac-e4290f052b41" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherIncomeAndExpensesAbstract"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_a4fef2fe-4cea-4091-8253-6c639c217d28" xlink:to="loc_us-gaap_OtherIncomeAndExpensesAbstract_34690de9-919c-4b3c-a8ac-e4290f052b41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_ea05e808-5589-478c-a3d3-323f1c5d9886" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InterestExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherIncomeAndExpensesAbstract_34690de9-919c-4b3c-a8ac-e4290f052b41" xlink:to="loc_us-gaap_InterestExpense_ea05e808-5589-478c-a3d3-323f1c5d9886" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_cb7b8da7-05c0-4a53-b76d-b499d5e35a72" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherIncomeAndExpensesAbstract_34690de9-919c-4b3c-a8ac-e4290f052b41" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_cb7b8da7-05c0-4a53-b76d-b499d5e35a72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAdjustmentOfWarrants_dec4c77d-7ec7-43a4-a269-83da77398c0e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAdjustmentOfWarrants"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherIncomeAndExpensesAbstract_34690de9-919c-4b3c-a8ac-e4290f052b41" xlink:to="loc_us-gaap_FairValueAdjustmentOfWarrants_dec4c77d-7ec7-43a4-a269-83da77398c0e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_a3dae828-88e9-4972-9852-9149e78f1cac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherIncomeAndExpensesAbstract_34690de9-919c-4b3c-a8ac-e4290f052b41" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_a3dae828-88e9-4972-9852-9149e78f1cac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_1fdad753-a8e1-436d-9032-0b165a26f602" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_a4fef2fe-4cea-4091-8253-6c639c217d28" xlink:to="loc_us-gaap_NetIncomeLoss_1fdad753-a8e1-436d-9032-0b165a26f602" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_f85e3a3a-ead0-4247-bb17-8ca84c98e30c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareBasicAndDilutedAbstract"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_a4fef2fe-4cea-4091-8253-6c639c217d28" xlink:to="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_f85e3a3a-ead0-4247-bb17-8ca84c98e30c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare_7f70f4fd-2876-48bf-a6b4-b7f7c5167a95" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_f85e3a3a-ead0-4247-bb17-8ca84c98e30c" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare_7f70f4fd-2876-48bf-a6b4-b7f7c5167a95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_06c9d69e-c006-4591-9071-094f622fdb66" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_a4fef2fe-4cea-4091-8253-6c639c217d28" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_06c9d69e-c006-4591-9071-094f622fdb66" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted_8784d4ae-611a-40bf-95c2-6103f32fbc86" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_06c9d69e-c006-4591-9071-094f622fdb66" xlink:to="loc_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted_8784d4ae-611a-40bf-95c2-6103f32fbc86" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofOperationsUnauditedParenthetical"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_2ecee866-5699-48e8-9bb0-8f5ef60f9b68" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_db273469-a6eb-4ad6-ba02-8e2f97c6c000" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteStockSplitConversionRatio1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_2ecee866-5699-48e8-9bb0-8f5ef60f9b68" xlink:to="loc_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_db273469-a6eb-4ad6-ba02-8e2f97c6c000" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofComprehensiveLossUnaudited"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_3fbc0b29-0c7d-4a03-b9d6-4f218a2d6af9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_db271722-df29-4c32-9e2a-031f828892be" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_3fbc0b29-0c7d-4a03-b9d6-4f218a2d6af9" xlink:to="loc_us-gaap_NetIncomeLoss_db271722-df29-4c32-9e2a-031f828892be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_9f99e4b6-115e-4b5c-9fc8-dfd617d2be09" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_3fbc0b29-0c7d-4a03-b9d6-4f218a2d6af9" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_9f99e4b6-115e-4b5c-9fc8-dfd617d2be09" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_6b233935-fce6-4d34-904b-920565bfc6ac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_9f99e4b6-115e-4b5c-9fc8-dfd617d2be09" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_6b233935-fce6-4d34-904b-920565bfc6ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_7a2bd3a6-c4a9-496a-8749-474b8fed8925" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_3fbc0b29-0c7d-4a03-b9d6-4f218a2d6af9" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_7a2bd3a6-c4a9-496a-8749-474b8fed8925" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_21a7c8d8-47c5-4e92-8e61-6c9538f149eb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_dcdee85d-4e9a-4ac0-bf16-3a5b449f29d9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_21a7c8d8-47c5-4e92-8e61-6c9538f149eb" xlink:to="loc_us-gaap_StatementTable_dcdee85d-4e9a-4ac0-bf16-3a5b449f29d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_ca47a408-c5e9-411a-a19d-86c949053e2b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_dcdee85d-4e9a-4ac0-bf16-3a5b449f29d9" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_ca47a408-c5e9-411a-a19d-86c949053e2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_ca47a408-c5e9-411a-a19d-86c949053e2b" xlink:to="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_48c39afb-50ae-4515-a08b-2223cace7c76" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:to="loc_us-gaap_PreferredStockMember_48c39afb-50ae-4515-a08b-2223cace7c76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_22bdf26e-6eba-4a8a-a42b-57eda0696c47" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:to="loc_us-gaap_CommonStockMember_22bdf26e-6eba-4a8a-a42b-57eda0696c47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_ad562f2f-0b60-4c39-823f-04aa0bd8c241" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_ad562f2f-0b60-4c39-823f-04aa0bd8c241" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_6881fe27-b5f6-4f9a-b314-a403817045a7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_6881fe27-b5f6-4f9a-b314-a403817045a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_6676e501-e80e-4a9d-b06d-314f568ef322" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_a8f54055-91d3-4868-a500-533dab4ae3ea" xlink:to="loc_us-gaap_RetainedEarningsMember_6676e501-e80e-4a9d-b06d-314f568ef322" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_ba93c188-fcd8-4ac0-ab9b-40b9c31e67d4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_dcdee85d-4e9a-4ac0-bf16-3a5b449f29d9" xlink:to="loc_us-gaap_AwardTypeAxis_ba93c188-fcd8-4ac0-ab9b-40b9c31e67d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_66b9cd7f-c1db-4290-b495-b9b03939585a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_ba93c188-fcd8-4ac0-ab9b-40b9c31e67d4" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_66b9cd7f-c1db-4290-b495-b9b03939585a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_473655d1-6331-4cba-bab0-1c654673f76c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_66b9cd7f-c1db-4290-b495-b9b03939585a" xlink:to="loc_us-gaap_PreferredStockMember_473655d1-6331-4cba-bab0-1c654673f76c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_d28bf1a3-9f50-4fb6-a886-2ba62ee246bf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_dcdee85d-4e9a-4ac0-bf16-3a5b449f29d9" xlink:to="loc_us-gaap_StatementLineItems_d28bf1a3-9f50-4fb6-a886-2ba62ee246bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_d28bf1a3-9f50-4fb6-a886-2ba62ee246bf" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_5ba0ac7c-3c9e-44c2-9106-a1c9a0b9f532" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesOutstanding"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_SharesOutstanding_5ba0ac7c-3c9e-44c2-9106-a1c9a0b9f532" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_639351f5-86c7-4d50-bf99-58da0345e869" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockholdersEquity_639351f5-86c7-4d50-bf99-58da0345e869" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_b5e9336c-0b87-4b23-aa1e-ecbf19022c2d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans_b5e9336c-0b87-4b23-aa1e-ecbf19022c2d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_9224e3e4-b688-4e38-8bc9-8a9b23dfd830" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan_9224e3e4-b688-4e38-8bc9-8a9b23dfd830" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_be5bd73f-4928-45cd-a2f6-898ca5af5c0c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_be5bd73f-4928-45cd-a2f6-898ca5af5c0c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues_0d31b8fd-13a4-48cf-b4f5-a2ef0f21543f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueNewIssues"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueNewIssues_0d31b8fd-13a4-48cf-b4f5-a2ef0f21543f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_9ee8afdd-74dd-4353-b37d-5a392fbd9ada" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_9ee8afdd-74dd-4353-b37d-5a392fbd9ada" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_169c1d7a-d1b6-46ab-917a-5de6f97c3770" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_169c1d7a-d1b6-46ab-917a-5de6f97c3770" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease_9002917c-4e13-4153-ba7b-d41b4134d589" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease_9002917c-4e13-4153-ba7b-d41b4134d589" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants_7ea1cf2c-78b5-469b-af14-74fd976063b6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants_7ea1cf2c-78b5-469b-af14-74fd976063b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_97965deb-bedd-4abd-96f0-3461116a9dbe" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts_97965deb-bedd-4abd-96f0-3461116a9dbe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued_01d29134-13cc-4ce9-b860-7321749f4ff4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued_01d29134-13cc-4ce9-b860-7321749f4ff4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_db3dc56f-cf07-45af-b937-ace54d720421" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities_db3dc56f-cf07-45af-b937-ace54d720421" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_f25542d0-ee54-4ba0-aab6-6b2ba41fb381" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities_f25542d0-ee54-4ba0-aab6-6b2ba41fb381" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_07b5e978-5256-401a-a1ae-6f3b2bc5fd8a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition_07b5e978-5256-401a-a1ae-6f3b2bc5fd8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_e520d6fa-407d-4fdb-abf4-4a929ea5e612" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_e520d6fa-407d-4fdb-abf4-4a929ea5e612" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharesOutstanding_23b14b6f-8dc7-4529-aeb6-885398d54d47" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharesOutstanding"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_SharesOutstanding_23b14b6f-8dc7-4529-aeb6-885398d54d47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_239f9798-1ea3-4ad9-8913-2d93c2ba93f4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e1674836-e56c-4526-b49f-c920f5427c8e" xlink:to="loc_us-gaap_StockholdersEquity_239f9798-1ea3-4ad9-8913-2d93c2ba93f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_12e5dd36-d950-4fed-a636-ce49fb9e0dbf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_56a65a17-8728-4a50-9d84-f1c0f66bfbe8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteStockSplitConversionRatio1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_12e5dd36-d950-4fed-a636-ce49fb9e0dbf" xlink:to="loc_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_56a65a17-8728-4a50-9d84-f1c0f66bfbe8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" xlink:type="simple" xlink:href="efoi-20210331.xsd#CondensedConsolidatedStatementsofCashFlowsUnaudited"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_5f387724-4246-4bb5-a5de-bd9d5f45ce70" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_3b02fe08-3d9a-4c36-8f4c-7ad31a1d6657" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_5f387724-4246-4bb5-a5de-bd9d5f45ce70" xlink:to="loc_us-gaap_StatementTable_3b02fe08-3d9a-4c36-8f4c-7ad31a1d6657" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_f2b48826-a064-45c0-9051-d91cfaf054de" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_3b02fe08-3d9a-4c36-8f4c-7ad31a1d6657" xlink:to="loc_us-gaap_DebtInstrumentAxis_f2b48826-a064-45c0-9051-d91cfaf054de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_5c87aa4d-5572-4820-8330-995bd02be5bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_f2b48826-a064-45c0-9051-d91cfaf054de" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_5c87aa4d-5572-4820-8330-995bd02be5bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_AustinCreditFacilityMember_7bc883e1-7c2b-4276-b01d-6d82127888b5" xlink:href="efoi-20210331.xsd#efoi_AustinCreditFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_5c87aa4d-5572-4820-8330-995bd02be5bd" xlink:to="loc_efoi_AustinCreditFacilityMember_7bc883e1-7c2b-4276-b01d-6d82127888b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NewCreditFacilitiesMember_e572902f-7527-4613-a671-3f21377b3fda" xlink:href="efoi-20210331.xsd#efoi_NewCreditFacilitiesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_5c87aa4d-5572-4820-8330-995bd02be5bd" xlink:to="loc_efoi_NewCreditFacilitiesMember_e572902f-7527-4613-a671-3f21377b3fda" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_3b02fe08-3d9a-4c36-8f4c-7ad31a1d6657" xlink:to="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c0b19ffa-195d-453a-a90c-866c917a8e93" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c0b19ffa-195d-453a-a90c-866c917a8e93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperations_628546eb-cf1d-4c83-a9aa-dedc9616cd3f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeLossFromContinuingOperations"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c0b19ffa-195d-453a-a90c-866c917a8e93" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperations_628546eb-cf1d-4c83-a9aa-dedc9616cd3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c0b19ffa-195d-453a-a90c-866c917a8e93" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_abc7a818-adb7-4db0-ba3f-019959381349" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_abc7a818-adb7-4db0-ba3f-019959381349" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_dcf6d495-2aa1-429b-98f3-992ddc960738" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Depreciation"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_Depreciation_dcf6d495-2aa1-429b-98f3-992ddc960738" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_3336e22b-78f6-43ed-a81f-77713104a0b2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensation"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_ShareBasedCompensation_3336e22b-78f6-43ed-a81f-77713104a0b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAdjustmentOfWarrants_fc488f17-ba07-457f-b5e5-071b6216e949" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAdjustmentOfWarrants"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_FairValueAdjustmentOfWarrants_fc488f17-ba07-457f-b5e5-071b6216e949" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_cf07a2ab-d017-47a8-a6b2-a663ef6257a2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_cf07a2ab-d017-47a8-a6b2-a663ef6257a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWriteDown_6fd0a0d5-c042-44a7-97f1-896beb03e909" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryWriteDown"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_InventoryWriteDown_6fd0a0d5-c042-44a7-97f1-896beb03e909" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_IncreaseDecreaseInProvisionForWarranties_c9bb5be2-42b4-4e7e-be52-d0611d12e4f4" xlink:href="efoi-20210331.xsd#efoi_IncreaseDecreaseInProvisionForWarranties"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_efoi_IncreaseDecreaseInProvisionForWarranties_c9bb5be2-42b4-4e7e-be52-d0611d12e4f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet_c6cda052-e19b-4abc-ac45-2f0a73ac7ca6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AmortizationOfDeferredLoanOriginationFeesNet"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet_c6cda052-e19b-4abc-ac45-2f0a73ac7ca6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_9f1c9746-fc2c-4578-9b8e-5b1d931682d8" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_4791a07e-270b-47d3-ac76-8125a1b9a670" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_4791a07e-270b-47d3-ac76-8125a1b9a670" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_23ffa6c4-3c82-4036-968c-19a1fe99988a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_23ffa6c4-3c82-4036-968c-19a1fe99988a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets_06ebbf2d-0ce3-4eeb-a9b7-0bbb3fdc2a1c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInDepositOtherAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInDepositOtherAssets_06ebbf2d-0ce3-4eeb-a9b7-0bbb3fdc2a1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_4d8031b4-5e4a-491f-abf4-3bedb3132254" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_4d8031b4-5e4a-491f-abf4-3bedb3132254" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_2f8c47a2-7e01-4865-9925-91d9b9698e75" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_2f8c47a2-7e01-4865-9925-91d9b9698e75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_d017b5c2-89ab-4348-a59e-2181b6974846" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_d017b5c2-89ab-4348-a59e-2181b6974846" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_ef5cae08-5594-4469-bb58-e4250bb9049b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_ef5cae08-5594-4469-bb58-e4250bb9049b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_7af93694-917a-4711-978c-3bd214b3d375" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_73b9185f-b594-4e8e-9f66-f847565b217a" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_7af93694-917a-4711-978c-3bd214b3d375" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7b1023e4-3142-4606-8acd-c46e02e5755d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_c0b19ffa-195d-453a-a90c-866c917a8e93" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_7b1023e4-3142-4606-8acd-c46e02e5755d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_ffb7b934-a2ad-4506-9039-f7fa85f97711" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_ffb7b934-a2ad-4506-9039-f7fa85f97711" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_e17eebbc-cfb4-44b0-baf6-4217caece2d2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_ffb7b934-a2ad-4506-9039-f7fa85f97711" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_e17eebbc-cfb4-44b0-baf6-4217caece2d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_f0adfa30-08a9-4254-82fe-8c67ee4d7d65" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_ffb7b934-a2ad-4506-9039-f7fa85f97711" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_f0adfa30-08a9-4254-82fe-8c67ee4d7d65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants_d50a9a2b-bf8f-4ec7-b3b7-72bdb68c8167" xlink:href="efoi-20210331.xsd#efoi_ProceedsFromIssuanceOfCommonStockAndWarrants"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants_d50a9a2b-bf8f-4ec7-b3b7-72bdb68c8167" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_4560d901-31fd-4c39-a38e-a0174ea6ff77" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_4560d901-31fd-4c39-a38e-a0174ea6ff77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_6f11abb2-6c02-450c-b074-b7ee8ca45f9d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_6f11abb2-6c02-450c-b074-b7ee8ca45f9d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_2fecbdbc-3fbd-4973-b804-df111c7ecd36" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_2fecbdbc-3fbd-4973-b804-df111c7ecd36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_6ace95a6-4896-49d2-af39-f8c8d1b0ca91" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_6ace95a6-4896-49d2-af39-f8c8d1b0ca91" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable_f5edc724-bef3-4db5-bc60-d2605dbbcb4a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_RepaymentsOfNotesPayable_f5edc724-bef3-4db5-bc60-d2605dbbcb4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_deebb0ee-4ce7-4b47-87ef-8807b9bc43e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromRepaymentsOfLinesOfCredit"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit_deebb0ee-4ce7-4b47-87ef-8807b9bc43e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_eb4f30ec-fea9-436d-a9ed-c52fe0fc80b9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_4fcaba3c-f62b-4d37-8839-9ec7533836cc" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_eb4f30ec-fea9-436d-a9ed-c52fe0fc80b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_04d38c7e-c0cf-494c-b99a-50ad8876ac81" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_04d38c7e-c0cf-494c-b99a-50ad8876ac81" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_d4a95bf8-654b-47f8-9608-56cf112e8dca" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_d4a95bf8-654b-47f8-9608-56cf112e8dca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_ff6ad05a-a206-40af-8cfd-69fab48f56b2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_ff6ad05a-a206-40af-8cfd-69fab48f56b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_f2ce7767-7943-42d8-9fc8-113622ee06f5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_95d000d4-a2f8-4351-bffd-055bbc39dd03" xlink:to="loc_us-gaap_CashAndCashEquivalentsAbstract_f2ce7767-7943-42d8-9fc8-113622ee06f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_47226f38-ee67-429f-a746-88e8d5bc6ba4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_f2ce7767-7943-42d8-9fc8-113622ee06f5" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_47226f38-ee67-429f-a746-88e8d5bc6ba4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCash_195a41e8-c0f2-409e-8fcb-184138d40116" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCash"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_f2ce7767-7943-42d8-9fc8-113622ee06f5" xlink:to="loc_us-gaap_RestrictedCash_195a41e8-c0f2-409e-8fcb-184138d40116" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_6119710d-1e50-4c07-b693-fff13296792f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_f2ce7767-7943-42d8-9fc8-113622ee06f5" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_6119710d-1e50-4c07-b693-fff13296792f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/NatureofOperations" xlink:type="simple" xlink:href="efoi-20210331.xsd#NatureofOperations"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/NatureofOperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_05ccf00d-4734-43fe-be86-86f0cb2c05ac" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NatureOfOperations_cadad0e9-1973-40dd-be5c-1c7728160f31" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NatureOfOperations"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_05ccf00d-4734-43fe-be86-86f0cb2c05ac" xlink:to="loc_us-gaap_NatureOfOperations_cadad0e9-1973-40dd-be5c-1c7728160f31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/NatureofOperationsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#NatureofOperationsDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/NatureofOperationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_8622e71e-dda6-467f-b028-dfacaa738ebc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_7298d6a4-ca8e-4b0d-9620-343239845c79" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteStockSplitConversionRatio1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_8622e71e-dda6-467f-b028-dfacaa738ebc" xlink:to="loc_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_7298d6a4-ca8e-4b0d-9620-343239845c79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_11c32a9b-78f3-4b27-a708-9fda33bbc2af" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_8622e71e-dda6-467f-b028-dfacaa738ebc" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_11c32a9b-78f3-4b27-a708-9fda33bbc2af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_58497806-53ad-4884-850a-ad6744c266bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_8622e71e-dda6-467f-b028-dfacaa738ebc" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_58497806-53ad-4884-850a-ad6744c266bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPolicies"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_f4eaedef-d747-4250-b3e7-acdd4cb21e48" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_91503c1a-e7c6-4f24-803c-dde756ebc3d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_f4eaedef-d747-4250-b3e7-acdd4cb21e48" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_91503c1a-e7c6-4f24-803c-dde756ebc3d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_042a3348-26bd-4800-be86-39d465877393" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_4cab2a7a-923c-42a5-bdb8-d60f0f2c96d9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_042a3348-26bd-4800-be86-39d465877393" xlink:to="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_4cab2a7a-923c-42a5-bdb8-d60f0f2c96d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UseOfEstimates_a9e7134c-d032-4f93-b12d-26f5c390d118" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UseOfEstimates"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_042a3348-26bd-4800-be86-39d465877393" xlink:to="loc_us-gaap_UseOfEstimates_a9e7134c-d032-4f93-b12d-26f5c390d118" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskCreditRisk_5daf57c8-d792-4ea1-9c5f-b827c6acb08f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskCreditRisk"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_042a3348-26bd-4800-be86-39d465877393" xlink:to="loc_us-gaap_ConcentrationRiskCreditRisk_5daf57c8-d792-4ea1-9c5f-b827c6acb08f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_74764ffe-50f2-4366-8b9a-82453c89c598" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_042a3348-26bd-4800-be86-39d465877393" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_74764ffe-50f2-4366-8b9a-82453c89c598" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueRecognitionPolicyTextBlock_fef2357b-6138-46a4-b6f4-4cbc53c4804a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_042a3348-26bd-4800-be86-39d465877393" xlink:to="loc_us-gaap_RevenueRecognitionPolicyTextBlock_fef2357b-6138-46a4-b6f4-4cbc53c4804a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy_d42b4c26-41e3-469a-a1dd-c6710aab42e8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_042a3348-26bd-4800-be86-39d465877393" xlink:to="loc_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy_d42b4c26-41e3-469a-a1dd-c6710aab42e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerSharePolicyTextBlock_d12a6a2c-d2a0-408d-b69e-344efce664bb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerSharePolicyTextBlock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_042a3348-26bd-4800-be86-39d465877393" xlink:to="loc_us-gaap_EarningsPerSharePolicyTextBlock_d12a6a2c-d2a0-408d-b69e-344efce664bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyPolicy_e9dbbf65-68ff-45fb-9cad-6be5e32a0cfd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StandardProductWarrantyPolicy"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_042a3348-26bd-4800-be86-39d465877393" xlink:to="loc_us-gaap_StandardProductWarrantyPolicy_e9dbbf65-68ff-45fb-9cad-6be5e32a0cfd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_8e2d1d42-49b1-48a8-9127-11071cdadbd1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_042a3348-26bd-4800-be86-39d465877393" xlink:to="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_8e2d1d42-49b1-48a8-9127-11071cdadbd1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_d1753c9a-46f5-418f-9938-e001e7288e58" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_9715e856-05c5-44d3-a802-8e63b00d4215" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_d1753c9a-46f5-418f-9938-e001e7288e58" xlink:to="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_9715e856-05c5-44d3-a802-8e63b00d4215" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_e0a17bb8-fc6d-4087-a009-42c72ae23948" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_d1753c9a-46f5-418f-9938-e001e7288e58" xlink:to="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_e0a17bb8-fc6d-4087-a009-42c72ae23948" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_88789724-7bf4-4c3a-8285-e98b3e654e03" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_d1753c9a-46f5-418f-9938-e001e7288e58" xlink:to="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_88789724-7bf4-4c3a-8285-e98b3e654e03" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_b977e4df-8b7e-4b98-9558-dd6fb578bfd2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_d1753c9a-46f5-418f-9938-e001e7288e58" xlink:to="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_b977e4df-8b7e-4b98-9558-dd6fb578bfd2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_6df7fe6d-3cd0-4168-bfd1-f0cbd59fe871" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_d1753c9a-46f5-418f-9938-e001e7288e58" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock_6df7fe6d-3cd0-4168-bfd1-f0cbd59fe871" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_d1b3c576-634c-49e0-af58-58307ffd054c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_d1753c9a-46f5-418f-9938-e001e7288e58" xlink:to="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_d1b3c576-634c-49e0-af58-58307ffd054c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_dfaf1494-13b8-491b-b14d-9117eea1dc60" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_dfaf1494-13b8-491b-b14d-9117eea1dc60" xlink:to="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_fface903-31f8-40a4-b026-051f0bffbdba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_fface903-31f8-40a4-b026-051f0bffbdba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_c06a1a51-6f4b-4b73-8e8e-84f57c9e0011" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_fface903-31f8-40a4-b026-051f0bffbdba" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_c06a1a51-6f4b-4b73-8e8e-84f57c9e0011" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_93c34fa3-ed99-4a21-97a4-526667d03a3e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CustomerConcentrationRiskMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_c06a1a51-6f4b-4b73-8e8e-84f57c9e0011" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_93c34fa3-ed99-4a21-97a4-526667d03a3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SupplierConcentrationRiskMember_e02e3e8b-f812-490b-8c16-5fb6b519b2a1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SupplierConcentrationRiskMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_c06a1a51-6f4b-4b73-8e8e-84f57c9e0011" xlink:to="loc_us-gaap_SupplierConcentrationRiskMember_e02e3e8b-f812-490b-8c16-5fb6b519b2a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember_07a99ba4-0bdc-4450-97d5-a539a306faa8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GeographicConcentrationRiskMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_c06a1a51-6f4b-4b73-8e8e-84f57c9e0011" xlink:to="loc_us-gaap_GeographicConcentrationRiskMember_07a99ba4-0bdc-4450-97d5-a539a306faa8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MajorCustomersAxis_7014907a-de25-4139-b5f4-8defb8e119d0" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MajorCustomersAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:to="loc_srt_MajorCustomersAxis_7014907a-de25-4139-b5f4-8defb8e119d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_NameOfMajorCustomerDomain_deb5d3fd-0853-4edb-9176-09e835ee4577" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_NameOfMajorCustomerDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_MajorCustomersAxis_7014907a-de25-4139-b5f4-8defb8e119d0" xlink:to="loc_srt_NameOfMajorCustomerDomain_deb5d3fd-0853-4edb-9176-09e835ee4577" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheU.S.NavyMember_a5f32dcb-b08c-46f4-9b1d-fa3078b20440" xlink:href="efoi-20210331.xsd#efoi_DistributorToTheU.S.NavyMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_deb5d3fd-0853-4edb-9176-09e835ee4577" xlink:to="loc_efoi_DistributorToTheU.S.NavyMember_a5f32dcb-b08c-46f4-9b1d-fa3078b20440" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RegionalCommercialLightingRetrofitCompanyMember_4d7bca75-6606-438e-b1be-66fabe3ae3bd" xlink:href="efoi-20210331.xsd#efoi_RegionalCommercialLightingRetrofitCompanyMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_deb5d3fd-0853-4edb-9176-09e835ee4577" xlink:to="loc_efoi_RegionalCommercialLightingRetrofitCompanyMember_4d7bca75-6606-438e-b1be-66fabe3ae3bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember_c5a5cf08-3c84-41ae-9f7b-3a3b93878345" xlink:href="efoi-20210331.xsd#efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_deb5d3fd-0853-4edb-9176-09e835ee4577" xlink:to="loc_efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember_c5a5cf08-3c84-41ae-9f7b-3a3b93878345" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ShipbuilderForUSNavyMember_82983146-7947-4bc5-adf1-d6e092957976" xlink:href="efoi-20210331.xsd#efoi_ShipbuilderForUSNavyMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_NameOfMajorCustomerDomain_deb5d3fd-0853-4edb-9176-09e835ee4577" xlink:to="loc_efoi_ShipbuilderForUSNavyMember_82983146-7947-4bc5-adf1-d6e092957976" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_2cc5692a-ec55-4640-abb6-852eda9a3969" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:to="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_2cc5692a-ec55-4640-abb6-852eda9a3969" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_97aafba4-8513-4f46-b257-2cf2d13a0efd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis_2cc5692a-ec55-4640-abb6-852eda9a3969" xlink:to="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_97aafba4-8513-4f46-b257-2cf2d13a0efd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OffshoreSupplierMember_6680b94a-ab72-4bba-826b-a14ae87ca2d8" xlink:href="efoi-20210331.xsd#efoi_OffshoreSupplierMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_97aafba4-8513-4f46-b257-2cf2d13a0efd" xlink:to="loc_efoi_OffshoreSupplierMember_6680b94a-ab72-4bba-826b-a14ae87ca2d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DomesticSupplierMember_ddde71d0-3f26-4e17-bb3d-2cee6dfa6073" xlink:href="efoi-20210331.xsd#efoi_DomesticSupplierMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain_97aafba4-8513-4f46-b257-2cf2d13a0efd" xlink:to="loc_efoi_DomesticSupplierMember_ddde71d0-3f26-4e17-bb3d-2cee6dfa6073" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_eaba4900-764a-4acc-bade-bd7a6090ed9b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_eaba4900-764a-4acc-bade-bd7a6090ed9b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_48a0ea5a-b8e5-414d-a968-9a0ca3ede66a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_eaba4900-764a-4acc-bade-bd7a6090ed9b" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_48a0ea5a-b8e5-414d-a968-9a0ca3ede66a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesRevenueNetMember_05b7f9c3-f3c1-49e2-bc67-95c404eac402" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SalesRevenueNetMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_48a0ea5a-b8e5-414d-a968-9a0ca3ede66a" xlink:to="loc_us-gaap_SalesRevenueNetMember_05b7f9c3-f3c1-49e2-bc67-95c404eac402" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember_0cf84562-05e2-4493-86f2-6a7bcbf7bda3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsReceivableMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_48a0ea5a-b8e5-414d-a968-9a0ca3ede66a" xlink:to="loc_us-gaap_AccountsReceivableMember_0cf84562-05e2-4493-86f2-6a7bcbf7bda3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableMember_e88578bf-0881-436b-aac4-ced4a4e154e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountsPayableMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_48a0ea5a-b8e5-414d-a968-9a0ca3ede66a" xlink:to="loc_us-gaap_AccountsPayableMember_e88578bf-0881-436b-aac4-ced4a4e154e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_2d14c4da-8ccb-4c53-ae1e-c99b8e199c50" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_StatementGeographicalAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:to="loc_srt_StatementGeographicalAxis_2d14c4da-8ccb-4c53-ae1e-c99b8e199c50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_ac9b957e-049e-4368-adc4-c649f042cee7" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_SegmentGeographicalDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_2d14c4da-8ccb-4c53-ae1e-c99b8e199c50" xlink:to="loc_srt_SegmentGeographicalDomain_ac9b957e-049e-4368-adc4-c649f042cee7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonUsMember_e3c28e2c-f95d-4761-bbb1-ec6327263e80" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NonUsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_ac9b957e-049e-4368-adc4-c649f042cee7" xlink:to="loc_us-gaap_NonUsMember_e3c28e2c-f95d-4761-bbb1-ec6327263e80" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskLineItems_344ae824-258a-4b99-a765-0b4c55980cf5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskLineItems"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskTable_e5100f71-9387-4ad1-8d9d-860bef90f67e" xlink:to="loc_us-gaap_ConcentrationRiskLineItems_344ae824-258a-4b99-a765-0b4c55980cf5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_2d0d7a60-2bf0-470f-aa4b-a010a2e78c8a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConcentrationRiskPercentage1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskLineItems_344ae824-258a-4b99-a765-0b4c55980cf5" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_2d0d7a60-2bf0-470f-aa4b-a010a2e78c8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_7336eef3-9186-4412-bb2a-ed0f8bb98cdb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c94af38e-5310-4140-9315-70fe553ede8b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_7336eef3-9186-4412-bb2a-ed0f8bb98cdb" xlink:to="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c94af38e-5310-4140-9315-70fe553ede8b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_099c925b-6c11-4270-bad1-96a927f1001f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c94af38e-5310-4140-9315-70fe553ede8b" xlink:to="loc_srt_ProductOrServiceAxis_099c925b-6c11-4270-bad1-96a927f1001f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_245a62cd-cd91-481e-94db-8aaebb4e85b0" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_099c925b-6c11-4270-bad1-96a927f1001f" xlink:to="loc_srt_ProductsAndServicesDomain_245a62cd-cd91-481e-94db-8aaebb4e85b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialProductsMember_45a71a5a-6bd9-4276-befe-2913adce77ef" xlink:href="efoi-20210331.xsd#efoi_CommercialProductsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_245a62cd-cd91-481e-94db-8aaebb4e85b0" xlink:to="loc_efoi_CommercialProductsMember_45a71a5a-6bd9-4276-befe-2913adce77ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_MMMProductsMember_b10ef0aa-a4ee-4144-9e55-60122880d89f" xlink:href="efoi-20210331.xsd#efoi_MMMProductsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_245a62cd-cd91-481e-94db-8aaebb4e85b0" xlink:to="loc_efoi_MMMProductsMember_b10ef0aa-a4ee-4144-9e55-60122880d89f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_4be6dec6-2e5c-454b-963e-8ac6554f3d20" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c94af38e-5310-4140-9315-70fe553ede8b" xlink:to="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_4be6dec6-2e5c-454b-963e-8ac6554f3d20" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Revenues_51823d7e-7bd0-4a5c-9aa7-3df0d9fa5a8b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Revenues"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_4be6dec6-2e5c-454b-963e-8ac6554f3d20" xlink:to="loc_us-gaap_Revenues_51823d7e-7bd0-4a5c-9aa7-3df0d9fa5a8b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_cd40b44d-428d-49e6-9d02-2a0144b588ed" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_7939bb83-2ba8-49bb-9ff1-245bf12b9c80" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_cd40b44d-428d-49e6-9d02-2a0144b588ed" xlink:to="loc_us-gaap_EarningsPerShareAbstract_7939bb83-2ba8-49bb-9ff1-245bf12b9c80" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_508600ed-f8f3-474e-81f8-885c548d0a3f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_7939bb83-2ba8-49bb-9ff1-245bf12b9c80" xlink:to="loc_us-gaap_NetIncomeLoss_508600ed-f8f3-474e-81f8-885c548d0a3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_841215fd-a4f7-4a96-ba82-c29364ba1907" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EarningsPerShareBasicAndDilutedAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_cd40b44d-428d-49e6-9d02-2a0144b588ed" xlink:to="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_841215fd-a4f7-4a96-ba82-c29364ba1907" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted_46f55a46-d232-4fc5-9177-05b7190759ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_841215fd-a4f7-4a96-ba82-c29364ba1907" xlink:to="loc_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted_46f55a46-d232-4fc5-9177-05b7190759ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_8e9f88f4-e832-492a-bd50-40ddc3d9e3e2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_429ed8d0-2a27-495e-a3dd-c1d962ed62be" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_8e9f88f4-e832-492a-bd50-40ddc3d9e3e2" xlink:to="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_429ed8d0-2a27-495e-a3dd-c1d962ed62be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_b0595752-8b53-4127-a160-1c114665d606" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_429ed8d0-2a27-495e-a3dd-c1d962ed62be" xlink:to="loc_us-gaap_AwardTypeAxis_b0595752-8b53-4127-a160-1c114665d606" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_61829987-1049-41f2-a2a2-0715a6be3f8d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_b0595752-8b53-4127-a160-1c114665d606" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_61829987-1049-41f2-a2a2-0715a6be3f8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockOptionMember_9e6cf96a-4e59-40da-9ede-29096ffd4f6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockOptionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_61829987-1049-41f2-a2a2-0715a6be3f8d" xlink:to="loc_us-gaap_StockOptionMember_9e6cf96a-4e59-40da-9ede-29096ffd4f6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_b99267f3-7d62-47e6-8e5b-55130f7ad5f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_61829987-1049-41f2-a2a2-0715a6be3f8d" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_b99267f3-7d62-47e6-8e5b-55130f7ad5f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantMember_aad931ff-95a3-4a12-83d6-acbcae99c9ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WarrantMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_61829987-1049-41f2-a2a2-0715a6be3f8d" xlink:to="loc_us-gaap_WarrantMember_aad931ff-95a3-4a12-83d6-acbcae99c9ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_481cdbf6-fb72-4faf-849b-6a4cf6d16269" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_61829987-1049-41f2-a2a2-0715a6be3f8d" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_481cdbf6-fb72-4faf-849b-6a4cf6d16269" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_1843f4ff-1de9-4294-b2b1-62b64e249ae8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareTable_429ed8d0-2a27-495e-a3dd-c1d962ed62be" xlink:to="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_1843f4ff-1de9-4294-b2b1-62b64e249ae8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_fe8c8c05-a2e4-4cc0-b797-2977e381265c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems_1843f4ff-1de9-4294-b2b1-62b64e249ae8" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_fe8c8c05-a2e4-4cc0-b797-2977e381265c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_042f8bb1-b3fe-4936-88a6-d575e1e8e5c2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyLiabilityTable_e828fa6f-46fa-4dae-bf25-c7306182198c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyLiabilityTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_042f8bb1-b3fe-4936-88a6-d575e1e8e5c2" xlink:to="loc_us-gaap_ProductWarrantyLiabilityTable_e828fa6f-46fa-4dae-bf25-c7306182198c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_c0f53ce6-7b98-41ca-9097-7c449acaa0fc" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantyLiabilityTable_e828fa6f-46fa-4dae-bf25-c7306182198c" xlink:to="loc_srt_RangeAxis_c0f53ce6-7b98-41ca-9097-7c449acaa0fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_62fb5818-3042-4217-b16b-21a23c27c110" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_c0f53ce6-7b98-41ca-9097-7c449acaa0fc" xlink:to="loc_srt_RangeMember_62fb5818-3042-4217-b16b-21a23c27c110" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_77aef49a-1102-48bc-891c-90294faf1bc8" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_62fb5818-3042-4217-b16b-21a23c27c110" xlink:to="loc_srt_MinimumMember_77aef49a-1102-48bc-891c-90294faf1bc8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_993827dc-c1b3-48f7-9ecc-9687ca4a6ef4" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_62fb5818-3042-4217-b16b-21a23c27c110" xlink:to="loc_srt_MaximumMember_993827dc-c1b3-48f7-9ecc-9687ca4a6ef4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_990264ef-f344-49c6-8ad9-443028781a51" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantyLiabilityTable_e828fa6f-46fa-4dae-bf25-c7306182198c" xlink:to="loc_srt_ProductOrServiceAxis_990264ef-f344-49c6-8ad9-443028781a51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_123d50e6-fa47-4586-825f-0e3191ac4292" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_990264ef-f344-49c6-8ad9-443028781a51" xlink:to="loc_srt_ProductsAndServicesDomain_123d50e6-fa47-4586-825f-0e3191ac4292" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember_2f53243c-b373-4138-8bce-24e916a171c1" xlink:href="efoi-20210331.xsd#efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_123d50e6-fa47-4586-825f-0e3191ac4292" xlink:to="loc_efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember_2f53243c-b373-4138-8bce-24e916a171c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OtherLEDProductsMember_ad26d3bf-2433-4aeb-afe0-ab86f197a594" xlink:href="efoi-20210331.xsd#efoi_OtherLEDProductsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_123d50e6-fa47-4586-825f-0e3191ac4292" xlink:to="loc_efoi_OtherLEDProductsMember_ad26d3bf-2433-4aeb-afe0-ab86f197a594" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember_f6d96b91-2c49-4696-a21e-48e4dbc37042" xlink:href="efoi-20210331.xsd#efoi_LEDFLTubularLEDLampsExcludingRedCapsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_123d50e6-fa47-4586-825f-0e3191ac4292" xlink:to="loc_efoi_LEDFLTubularLEDLampsExcludingRedCapsMember_f6d96b91-2c49-4696-a21e-48e4dbc37042" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DSeriesLampsMember_fca322d4-c74b-4adb-a92a-601ca2d1e9e3" xlink:href="efoi-20210331.xsd#efoi_DSeriesLampsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_123d50e6-fa47-4586-825f-0e3191ac4292" xlink:to="loc_efoi_DSeriesLampsMember_fca322d4-c74b-4adb-a92a-601ca2d1e9e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyLiabilityLineItems_4d5cd74f-ccee-4539-a06d-73d07a50e593" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyLiabilityLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantyLiabilityTable_e828fa6f-46fa-4dae-bf25-c7306182198c" xlink:to="loc_us-gaap_ProductWarrantyLiabilityLineItems_4d5cd74f-ccee-4539-a06d-73d07a50e593" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StandardProductWarrantyNumberofYears_7d6a996a-0e8d-48fd-9859-098e404fe677" xlink:href="efoi-20210331.xsd#efoi_StandardProductWarrantyNumberofYears"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantyLiabilityLineItems_4d5cd74f-ccee-4539-a06d-73d07a50e593" xlink:to="loc_efoi_StandardProductWarrantyNumberofYears_7d6a996a-0e8d-48fd-9859-098e404fe677" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_a1cf6845-8de7-486a-a874-93cddc34a0db" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_721b6271-de86-46fb-8ea4-a328ead17d31" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_a1cf6845-8de7-486a-a874-93cddc34a0db" xlink:to="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_721b6271-de86-46fb-8ea4-a328ead17d31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual_004b362a-34fb-448c-af33-9ec9b0d15473" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_721b6271-de86-46fb-8ea4-a328ead17d31" xlink:to="loc_us-gaap_ProductWarrantyAccrual_004b362a-34fb-448c-af33-9ec9b0d15473" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_72c209aa-9224-4dc4-b168-0a9f81be7ef7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StandardProductWarrantyAccrualWarrantiesIssued"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_721b6271-de86-46fb-8ea4-a328ead17d31" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_72c209aa-9224-4dc4-b168-0a9f81be7ef7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease_0f990474-b33e-437e-a980-39a6ef64f23a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_721b6271-de86-46fb-8ea4-a328ead17d31" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease_0f990474-b33e-437e-a980-39a6ef64f23a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualPayments_887026e1-5a57-4437-b54c-66df5f09f54d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StandardProductWarrantyAccrualPayments"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_721b6271-de86-46fb-8ea4-a328ead17d31" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualPayments_887026e1-5a57-4437-b54c-66df5f09f54d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual_d101dfd0-e359-4c67-9e8a-ff14a3f3e0b3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_721b6271-de86-46fb-8ea4-a328ead17d31" xlink:to="loc_us-gaap_ProductWarrantyAccrual_d101dfd0-e359-4c67-9e8a-ff14a3f3e0b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_613644a0-c0f9-482a-92ce-f8a6fb5068ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockByClassTable_6ad9a534-6fa6-4e63-a829-c6899abb2c5c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfStockByClassTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_613644a0-c0f9-482a-92ce-f8a6fb5068ef" xlink:to="loc_us-gaap_ScheduleOfStockByClassTable_6ad9a534-6fa6-4e63-a829-c6899abb2c5c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_64c62c22-b5fc-4ef0-95ae-42edea7332d4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_6ad9a534-6fa6-4e63-a829-c6899abb2c5c" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_64c62c22-b5fc-4ef0-95ae-42edea7332d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_3dc0439f-8de2-4f8f-90e0-f1d881941b7b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_64c62c22-b5fc-4ef0-95ae-42edea7332d4" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_3dc0439f-8de2-4f8f-90e0-f1d881941b7b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_4abd4a6e-cfed-449f-8a96-c4118f3a1551" xlink:href="efoi-20210331.xsd#efoi_InstitutionalInvestorMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_3dc0439f-8de2-4f8f-90e0-f1d881941b7b" xlink:to="loc_efoi_InstitutionalInvestorMember_4abd4a6e-cfed-449f-8a96-c4118f3a1551" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrivatePlacementMember_93346bc6-e8dc-4c80-9115-64434e8ffb77" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrivatePlacementMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_3dc0439f-8de2-4f8f-90e0-f1d881941b7b" xlink:to="loc_us-gaap_PrivatePlacementMember_93346bc6-e8dc-4c80-9115-64434e8ffb77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_094b48da-9c45-400d-ae3f-165840cb56ca" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_6ad9a534-6fa6-4e63-a829-c6899abb2c5c" xlink:to="loc_us-gaap_DebtInstrumentAxis_094b48da-9c45-400d-ae3f-165840cb56ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_a1db35f5-c326-4a36-a41a-f60feeb7cf57" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_094b48da-9c45-400d-ae3f-165840cb56ca" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_a1db35f5-c326-4a36-a41a-f60feeb7cf57" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NotePurchaseAgreementMember_a1c23202-e2b2-49dc-b6cd-ade44490b3f6" xlink:href="efoi-20210331.xsd#efoi_NotePurchaseAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_a1db35f5-c326-4a36-a41a-f60feeb7cf57" xlink:to="loc_efoi_NotePurchaseAgreementMember_a1c23202-e2b2-49dc-b6cd-ade44490b3f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfStockByClassTable_6ad9a534-6fa6-4e63-a829-c6899abb2c5c" xlink:to="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_1276df44-ffd7-4e11-9fb4-438dcb8dd41d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_1276df44-ffd7-4e11-9fb4-438dcb8dd41d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_8f994528-36f3-48a2-a0b6-a767a222857b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_8f994528-36f3-48a2-a0b6-a767a222857b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_54658787-9e65-475f-8aaa-5eadfb8278c8" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_54658787-9e65-475f-8aaa-5eadfb8278c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_7ba634ad-6d48-433f-8a87-3a83956942e2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_7ba634ad-6d48-433f-8a87-3a83956942e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_6aea3565-7eb3-4795-980b-2036c13a0973" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_6aea3565-7eb3-4795-980b-2036c13a0973" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions_3dd053b0-a037-401d-9385-44eea4786c4a" xlink:href="efoi-20210331.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_PaymentsForPlacementAgentCommissions_3dd053b0-a037-401d-9385-44eea4786c4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_99d1833c-0ec1-48b6-a835-08cae1bd3253" xlink:href="efoi-20210331.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_99d1833c-0ec1-48b6-a835-08cae1bd3253" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees_3edb7555-1859-4f38-9dc2-e30ece8190fa" xlink:href="efoi-20210331.xsd#efoi_PaymentsForClearingFees"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_PaymentsForClearingFees_3edb7555-1859-4f38-9dc2-e30ece8190fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_eba1083c-745a-46f2-b2cc-8a3a7ff06cae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_eba1083c-745a-46f2-b2cc-8a3a7ff06cae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_f5633b2c-c6cd-419e-af5e-0fef5bbbf1fd" xlink:href="efoi-20210331.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_f5633b2c-c6cd-419e-af5e-0fef5bbbf1fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_20b5bdfd-1fc5-4171-8cd7-b50789db9a28" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentProceedsToBePaidToLenderPercent"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_20b5bdfd-1fc5-4171-8cd7-b50789db9a28" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_3b23db0b-2050-402d-afce-8cd4b2815c0e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOrSaleOfEquity"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_3b23db0b-2050-402d-afce-8cd4b2815c0e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable_d67f8e94-7399-426d-bdee-9dc68e590aea" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_RepaymentsOfNotesPayable_d67f8e94-7399-426d-bdee-9dc68e590aea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfWarrants_9ea50d16-bbdc-44b2-8d72-51b2608a6e41" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfWarrants"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfWarrants_9ea50d16-bbdc-44b2-8d72-51b2608a6e41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_6e74555f-a0aa-484d-9ea8-ecde25b0a70a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_6e74555f-a0aa-484d-9ea8-ecde25b0a70a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_f613dda0-8a0e-4b28-bbe3-44c18803edb9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockLineItems_88ce66a3-c5a3-46f9-ad2a-7098717609cc" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_f613dda0-8a0e-4b28-bbe3-44c18803edb9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_ae600988-099f-4e00-8dec-4d5aa7902a06" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6108be63-3ed7-43a2-9ed1-46683dcd98d9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_ae600988-099f-4e00-8dec-4d5aa7902a06" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6108be63-3ed7-43a2-9ed1-46683dcd98d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_e4996330-ee31-4d65-ad57-c6cdd4e2834b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6108be63-3ed7-43a2-9ed1-46683dcd98d9" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_e4996330-ee31-4d65-ad57-c6cdd4e2834b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_939187bf-22e4-441d-aa54-692a952bb9c2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_e4996330-ee31-4d65-ad57-c6cdd4e2834b" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_939187bf-22e4-441d-aa54-692a952bb9c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember_de52babc-bb73-4355-b6cc-36bfbebf53ff" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsRecurringMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_939187bf-22e4-441d-aa54-692a952bb9c2" xlink:to="loc_us-gaap_FairValueMeasurementsRecurringMember_de52babc-bb73-4355-b6cc-36bfbebf53ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_1ce752b0-ff6a-4fd6-b2bd-94540ed4dc9b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6108be63-3ed7-43a2-9ed1-46683dcd98d9" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_1ce752b0-ff6a-4fd6-b2bd-94540ed4dc9b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_abc52dc5-9178-4c74-9886-41be6e495be6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_1ce752b0-ff6a-4fd6-b2bd-94540ed4dc9b" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_abc52dc5-9178-4c74-9886-41be6e495be6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_a50e1426-e55d-4b80-a54a-fd6f0afb4e43" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_abc52dc5-9178-4c74-9886-41be6e495be6" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_a50e1426-e55d-4b80-a54a-fd6f0afb4e43" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_f9378cef-0b8e-4aa4-bcf9-8d9d99c78a2d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_abc52dc5-9178-4c74-9886-41be6e495be6" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_f9378cef-0b8e-4aa4-bcf9-8d9d99c78a2d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_d627b1fe-78b4-4597-9fed-4e26a53fbf6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_abc52dc5-9178-4c74-9886-41be6e495be6" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_d627b1fe-78b4-4597-9fed-4e26a53fbf6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_a6f852f3-cf40-475f-9972-0d489468cce8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_6108be63-3ed7-43a2-9ed1-46683dcd98d9" xlink:to="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_a6f852f3-cf40-475f-9972-0d489468cce8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent_e9555b82-9f57-41db-9211-f8a894d8b123" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_a6f852f3-cf40-475f-9972-0d489468cce8" xlink:to="loc_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent_e9555b82-9f57-41db-9211-f8a894d8b123" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_c83dad58-411d-430a-ad32-c6b99c8ec35d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cc189bd4-f8e4-44cb-b799-cbe67012ba1c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueByBalanceSheetGroupingTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_c83dad58-411d-430a-ad32-c6b99c8ec35d" xlink:to="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cc189bd4-f8e4-44cb-b799-cbe67012ba1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_941f7429-c820-494f-a388-87e67daf5ca0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cc189bd4-f8e4-44cb-b799-cbe67012ba1c" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_941f7429-c820-494f-a388-87e67daf5ca0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_84dd5125-0491-4c4f-ae01-d243e54f7331" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_941f7429-c820-494f-a388-87e67daf5ca0" xlink:to="loc_us-gaap_EquityComponentDomain_84dd5125-0491-4c4f-ae01-d243e54f7331" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WarrantMember_e83df4d1-e78c-44d9-9af8-dbd3f053c0a5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WarrantMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_84dd5125-0491-4c4f-ae01-d243e54f7331" xlink:to="loc_us-gaap_WarrantMember_e83df4d1-e78c-44d9-9af8-dbd3f053c0a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_a7c8de39-2774-45cd-9897-82b9c2799612" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cc189bd4-f8e4-44cb-b799-cbe67012ba1c" xlink:to="loc_srt_RangeAxis_a7c8de39-2774-45cd-9897-82b9c2799612" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_0552ff0e-3ce0-4df8-a826-0841f8be9b39" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_a7c8de39-2774-45cd-9897-82b9c2799612" xlink:to="loc_srt_RangeMember_0552ff0e-3ce0-4df8-a826-0841f8be9b39" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_0797924f-82c6-46da-a266-76f2daad42ff" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_0552ff0e-3ce0-4df8-a826-0841f8be9b39" xlink:to="loc_srt_MinimumMember_0797924f-82c6-46da-a266-76f2daad42ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_adcd8891-709e-4c74-9770-8ef51b6bf917" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_0552ff0e-3ce0-4df8-a826-0841f8be9b39" xlink:to="loc_srt_MaximumMember_adcd8891-709e-4c74-9770-8ef51b6bf917" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_fc075cad-5dec-4224-9f3d-a61f05192625" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByBalanceSheetGroupingTable_cc189bd4-f8e4-44cb-b799-cbe67012ba1c" xlink:to="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_fc075cad-5dec-4224-9f3d-a61f05192625" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_d3b2414c-fca4-4b99-b95a-43759c812199" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_fc075cad-5dec-4224-9f3d-a61f05192625" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_d3b2414c-fca4-4b99-b95a-43759c812199" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_cf3a0e21-11e9-49dd-82da-4c180b21c30c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_fc075cad-5dec-4224-9f3d-a61f05192625" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_cf3a0e21-11e9-49dd-82da-4c180b21c30c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_ff5ce225-34b9-410d-8356-89d5c392fd68" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_fc075cad-5dec-4224-9f3d-a61f05192625" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_ff5ce225-34b9-410d-8356-89d5c392fd68" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_601bc5e9-9698-48c6-a818-66f63c554c23" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems_fc075cad-5dec-4224-9f3d-a61f05192625" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_601bc5e9-9698-48c6-a818-66f63c554c23" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_e60175e2-575a-4443-af93-133536ee2a9e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_3fa55d57-d918-438c-902f-3a0ce238f3e6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_e60175e2-575a-4443-af93-133536ee2a9e" xlink:to="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_3fa55d57-d918-438c-902f-3a0ce238f3e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent_2178f6ef-3292-4c1a-8776-7c6b975a3717" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_3fa55d57-d918-438c-902f-3a0ce238f3e6" xlink:to="loc_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent_2178f6ef-3292-4c1a-8776-7c6b975a3717" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues_86e278d1-b146-4a40-81c7-55cd8a7a96c5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_3fa55d57-d918-438c-902f-3a0ce238f3e6" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues_86e278d1-b146-4a40-81c7-55cd8a7a96c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAdjustmentOfWarrants_e7695e2d-ebf5-4b4d-b0f2-ec3c69b64644" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FairValueAdjustmentOfWarrants"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_3fa55d57-d918-438c-902f-3a0ce238f3e6" xlink:to="loc_us-gaap_FairValueAdjustmentOfWarrants_e7695e2d-ebf5-4b4d-b0f2-ec3c69b64644" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent_eded1d33-af0d-491f-a200-d5294153af51" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_3fa55d57-d918-438c-902f-3a0ce238f3e6" xlink:to="loc_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent_eded1d33-af0d-491f-a200-d5294153af51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Restructuring" xlink:type="simple" xlink:href="efoi-20210331.xsd#Restructuring"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/Restructuring" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_7f56afa4-3883-4424-9416-e824c4a47eba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_51916443-1d5f-4aa5-83ff-9e3529e74e84" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_7f56afa4-3883-4424-9416-e824c4a47eba" xlink:to="loc_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock_51916443-1d5f-4aa5-83ff-9e3529e74e84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RestructuringTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#RestructuringTables"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/RestructuringTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_f5d65ced-eea9-43fd-8f56-bc85d5f87a68" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_05e9a9ff-82b4-4f9f-994d-ee83367ef6f8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_f5d65ced-eea9-43fd-8f56-bc85d5f87a68" xlink:to="loc_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock_05e9a9ff-82b4-4f9f-994d-ee83367ef6f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RestructuringNarrativeDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#RestructuringNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/RestructuringNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_9b8f9ab2-9dce-4309-af3a-f9f0178c57f7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCosts_a001aa39-1941-4fc6-b8d4-fe27aaf7db2e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringCosts"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_9b8f9ab2-9dce-4309-af3a-f9f0178c57f7" xlink:to="loc_us-gaap_RestructuringCosts_a001aa39-1941-4fc6-b8d4-fe27aaf7db2e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_bbf5a038-4355-4006-b7d3-ca362679c436" xlink:href="efoi-20210331.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_9b8f9ab2-9dce-4309-af3a-f9f0178c57f7" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_bbf5a038-4355-4006-b7d3-ca362679c436" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_d1d28534-b8bf-4f63-8fb2-8edd379b796a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_9b8f9ab2-9dce-4309-af3a-f9f0178c57f7" xlink:to="loc_us-gaap_StockholdersEquity_d1d28534-b8bf-4f63-8fb2-8edd379b796a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#RestructuringReconciliationofRestructuringLiabilityDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_f3a72c36-ccfc-4d9c-8148-1413c29626fb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringAndRelatedActivitiesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_babb19ec-c143-4974-ba96-5aea2622873f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringAndRelatedActivitiesAbstract_f3a72c36-ccfc-4d9c-8148-1413c29626fb" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_babb19ec-c143-4974-ba96-5aea2622873f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringPlanAxis_72017342-ab49-49f9-b7cc-48eab1f0aeb2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringPlanAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_babb19ec-c143-4974-ba96-5aea2622873f" xlink:to="loc_us-gaap_RestructuringPlanAxis_72017342-ab49-49f9-b7cc-48eab1f0aeb2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringPlanDomain_f114603f-851e-45be-a17e-38f0ee5d59ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringPlanDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringPlanAxis_72017342-ab49-49f9-b7cc-48eab1f0aeb2" xlink:to="loc_us-gaap_RestructuringPlanDomain_f114603f-851e-45be-a17e-38f0ee5d59ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_A2017RestructuringPlanMember_8673b5e3-7a49-478f-a984-ff88181ab6d4" xlink:href="efoi-20210331.xsd#efoi_A2017RestructuringPlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringPlanDomain_f114603f-851e-45be-a17e-38f0ee5d59ec" xlink:to="loc_efoi_A2017RestructuringPlanMember_8673b5e3-7a49-478f-a984-ff88181ab6d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveAxis_be794c1d-9684-4c11-b6a1-6abcad8564a4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringCostAndReserveAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_babb19ec-c143-4974-ba96-5aea2622873f" xlink:to="loc_us-gaap_RestructuringCostAndReserveAxis_be794c1d-9684-4c11-b6a1-6abcad8564a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TypeOfRestructuringDomain_2349641c-620f-4148-b01d-13f162f461b1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TypeOfRestructuringDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveAxis_be794c1d-9684-4c11-b6a1-6abcad8564a4" xlink:to="loc_us-gaap_TypeOfRestructuringDomain_2349641c-620f-4148-b01d-13f162f461b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FacilityClosingMember_1171259a-521f-4f65-abfb-0f8ca1487a11" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FacilityClosingMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TypeOfRestructuringDomain_2349641c-620f-4148-b01d-13f162f461b1" xlink:to="loc_us-gaap_FacilityClosingMember_1171259a-521f-4f65-abfb-0f8ca1487a11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_aea9868c-3974-4bcf-96f9-35f39fc48f9a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_babb19ec-c143-4974-ba96-5aea2622873f" xlink:to="loc_us-gaap_RestructuringCostAndReserveLineItems_aea9868c-3974-4bcf-96f9-35f39fc48f9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveRollForward_32dc664d-b013-48b7-8237-75392bdb6d9d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserveRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_aea9868c-3974-4bcf-96f9-35f39fc48f9a" xlink:to="loc_us-gaap_RestructuringReserveRollForward_32dc664d-b013-48b7-8237-75392bdb6d9d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserve_3610b65d-24de-41c3-a120-f8ef91c05257" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserve"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringReserveRollForward_32dc664d-b013-48b7-8237-75392bdb6d9d" xlink:to="loc_us-gaap_RestructuringReserve_3610b65d-24de-41c3-a120-f8ef91c05257" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuringReserveAccretion_61a6933b-258c-4503-a6f2-7339b5f5ec68" xlink:href="efoi-20210331.xsd#efoi_RestructuringReserveAccretion"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringReserveRollForward_32dc664d-b013-48b7-8237-75392bdb6d9d" xlink:to="loc_efoi_RestructuringReserveAccretion_61a6933b-258c-4503-a6f2-7339b5f5ec68" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRestructuring_283405d5-6d50-443d-9932-f91997c1a502" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsForRestructuring"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringReserveRollForward_32dc664d-b013-48b7-8237-75392bdb6d9d" xlink:to="loc_us-gaap_PaymentsForRestructuring_283405d5-6d50-443d-9932-f91997c1a502" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserve_fb7763c1-0626-42e9-b909-ff5ee4d6e7ee" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserve"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringReserveRollForward_32dc664d-b013-48b7-8237-75392bdb6d9d" xlink:to="loc_us-gaap_RestructuringReserve_fb7763c1-0626-42e9-b909-ff5ee4d6e7ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveCurrent_2e02f1f9-49d8-488b-a031-e75b47aeac61" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserveCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_aea9868c-3974-4bcf-96f9-35f39fc48f9a" xlink:to="loc_us-gaap_RestructuringReserveCurrent_2e02f1f9-49d8-488b-a031-e75b47aeac61" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringReserveNoncurrent_32a8b67a-bdb9-49d7-93bd-afc69bb48613" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestructuringReserveNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_aea9868c-3974-4bcf-96f9-35f39fc48f9a" xlink:to="loc_us-gaap_RestructuringReserveNoncurrent_32a8b67a-bdb9-49d7-93bd-afc69bb48613" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Inventories" xlink:type="simple" xlink:href="efoi-20210331.xsd#Inventories"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/Inventories" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_778be7ba-6089-427d-ab86-469491636b94" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_28359a78-ab5d-41d9-8ce1-81b26cc16a9a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_778be7ba-6089-427d-ab86-469491636b94" xlink:to="loc_us-gaap_InventoryDisclosureTextBlock_28359a78-ab5d-41d9-8ce1-81b26cc16a9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/InventoriesTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#InventoriesTables"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/InventoriesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_a81dc941-7c0e-4c02-83ff-c1390d1eec1d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_2e1ea0fe-0204-4f92-90cb-545f8e187753" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_a81dc941-7c0e-4c02-83ff-c1390d1eec1d" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_2e1ea0fe-0204-4f92-90cb-545f8e187753" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#InventoriesInventoriesNetDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_95ef65be-8aaf-45f5-bf34-b5e825074d72" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_8964c8fa-a4cd-4540-a6f7-9c3b0e0e8591" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_95ef65be-8aaf-45f5-bf34-b5e825074d72" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_8964c8fa-a4cd-4540-a6f7-9c3b0e0e8591" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_1cf81424-5cd5-4adf-99d4-e82a6815343a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_95ef65be-8aaf-45f5-bf34-b5e825074d72" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_1cf81424-5cd5-4adf-99d4-e82a6815343a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesRawMaterials_907bc5cb-c420-4c10-bdbf-a1ae838cbaef" xlink:href="efoi-20210331.xsd#efoi_InventoryValuationReservesRawMaterials"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_95ef65be-8aaf-45f5-bf34-b5e825074d72" xlink:to="loc_efoi_InventoryValuationReservesRawMaterials_907bc5cb-c420-4c10-bdbf-a1ae838cbaef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_fc342ab3-dc77-4008-b06f-f47eca728143" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_95ef65be-8aaf-45f5-bf34-b5e825074d72" xlink:to="loc_us-gaap_InventoryNet_fc342ab3-dc77-4008-b06f-f47eca728143" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#InventoriesReserveRollforwardDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TextBlockAbstract_77d73375-2074-40b3-be8b-b1ce41fcce25" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_TextBlockAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryReserveRollForward_374d272d-8a79-41ff-b611-361cfebc2c59" xlink:href="efoi-20210331.xsd#efoi_InventoryReserveRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TextBlockAbstract_77d73375-2074-40b3-be8b-b1ce41fcce25" xlink:to="loc_efoi_InventoryReserveRollForward_374d272d-8a79-41ff-b611-361cfebc2c59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesRawMaterials_1171c800-8874-4d90-a6a6-a84b4162da82" xlink:href="efoi-20210331.xsd#efoi_InventoryValuationReservesRawMaterials"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_InventoryReserveRollForward_374d272d-8a79-41ff-b611-361cfebc2c59" xlink:to="loc_efoi_InventoryValuationReservesRawMaterials_1171c800-8874-4d90-a6a6-a84b4162da82" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedPeriodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesProvisionAccrual_a65154ce-6a52-4f0b-b015-60b9c142593b" xlink:href="efoi-20210331.xsd#efoi_InventoryValuationReservesProvisionAccrual"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_InventoryReserveRollForward_374d272d-8a79-41ff-b611-361cfebc2c59" xlink:to="loc_efoi_InventoryValuationReservesProvisionAccrual_a65154ce-6a52-4f0b-b015-60b9c142593b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesSalesOfInventory_3ce6006e-54f6-4304-8dfd-c7f3da9404d2" xlink:href="efoi-20210331.xsd#efoi_InventoryValuationReservesSalesOfInventory"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_InventoryReserveRollForward_374d272d-8a79-41ff-b611-361cfebc2c59" xlink:to="loc_efoi_InventoryValuationReservesSalesOfInventory_3ce6006e-54f6-4304-8dfd-c7f3da9404d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryValuationReservesRawMaterials_8b5a3d5c-e78b-4462-a66f-8d0f0a0ad174" xlink:href="efoi-20210331.xsd#efoi_InventoryValuationReservesRawMaterials"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_InventoryReserveRollForward_374d272d-8a79-41ff-b611-361cfebc2c59" xlink:to="loc_efoi_InventoryValuationReservesRawMaterials_8b5a3d5c-e78b-4462-a66f-8d0f0a0ad174" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedPeriodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/PropertyandEquipment" xlink:type="simple" xlink:href="efoi-20210331.xsd#PropertyandEquipment"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/PropertyandEquipment" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_63a90372-e245-4cc1-9677-b00a48306a85" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_e8cab95e-8788-405b-81fe-cd973aef4d52" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_63a90372-e245-4cc1-9677-b00a48306a85" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_e8cab95e-8788-405b-81fe-cd973aef4d52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/PropertyandEquipmentTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#PropertyandEquipmentTables"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/PropertyandEquipmentTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_db8f721f-5797-4e59-a32c-3a43beddea78" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_0627a9b1-26d0-47bd-ab85-50418ffcbb65" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_db8f721f-5797-4e59-a32c-3a43beddea78" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_0627a9b1-26d0-47bd-ab85-50418ffcbb65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#PropertyandEquipmentScheduleofPropertyandEquipmentDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_84176ecd-1cad-4d41-b4da-1574e81081de" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_3ae08036-82f8-45b2-b706-dba0aa437d6b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_84176ecd-1cad-4d41-b4da-1574e81081de" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_3ae08036-82f8-45b2-b706-dba0aa437d6b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_057a6e1e-2b3a-4841-bf8e-aa82ea6ff4bc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_3ae08036-82f8-45b2-b706-dba0aa437d6b" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_057a6e1e-2b3a-4841-bf8e-aa82ea6ff4bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_057a6e1e-2b3a-4841-bf8e-aa82ea6ff4bc" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquipmentMember_a920a86e-2f80-4e74-8cd2-f1173442be04" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquipmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_us-gaap_EquipmentMember_a920a86e-2f80-4e74-8cd2-f1173442be04" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ToolingMember_e8d388ab-e1d3-4a10-b223-6a997dc3aaac" xlink:href="efoi-20210331.xsd#efoi_ToolingMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_efoi_ToolingMember_e8d388ab-e1d3-4a10-b223-6a997dc3aaac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VehiclesMember_1f72e898-a525-489e-a123-434a47ded0bb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VehiclesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_us-gaap_VehiclesMember_1f72e898-a525-489e-a123-434a47ded0bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_ea739c4d-0498-4f62-9a53-bffda216807a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FurnitureAndFixturesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_ea739c4d-0498-4f62-9a53-bffda216807a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_e527c284-8ee0-40ea-8490-3d2907a2c494" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_e527c284-8ee0-40ea-8490-3d2907a2c494" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsMember_0bc612a7-5bc9-494c-9e6d-a45f51e16b47" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseholdImprovementsMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_us-gaap_LeaseholdImprovementsMember_0bc612a7-5bc9-494c-9e6d-a45f51e16b47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetMember_6cf94595-e082-437f-ba37-0f9fff850f61" xlink:href="efoi-20210331.xsd#efoi_FinanceLeaseRightOfUseAssetMember"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_efoi_FinanceLeaseRightOfUseAssetMember_6cf94595-e082-437f-ba37-0f9fff850f61" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressMember_5c92b6b3-7e18-4477-a1e0-1660a99577a7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConstructionInProgressMember"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_1d9c3e3b-30e0-449b-aa12-71ef57d57ba8" xlink:to="loc_us-gaap_ConstructionInProgressMember_5c92b6b3-7e18-4477-a1e0-1660a99577a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_2ce6e78f-a744-4d5d-ad4c-7a25e9025eff" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_3ae08036-82f8-45b2-b706-dba0aa437d6b" xlink:to="loc_srt_RangeAxis_2ce6e78f-a744-4d5d-ad4c-7a25e9025eff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_1466d65f-5fa0-456e-81ee-b487ff5c4116" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_2ce6e78f-a744-4d5d-ad4c-7a25e9025eff" xlink:to="loc_srt_RangeMember_1466d65f-5fa0-456e-81ee-b487ff5c4116" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_97d59feb-5937-40ba-9d5a-33e6ec21b984" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_1466d65f-5fa0-456e-81ee-b487ff5c4116" xlink:to="loc_srt_MinimumMember_97d59feb-5937-40ba-9d5a-33e6ec21b984" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_9cd15399-a4a4-48cc-92b1-60487f62a681" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_1466d65f-5fa0-456e-81ee-b487ff5c4116" xlink:to="loc_srt_MaximumMember_9cd15399-a4a4-48cc-92b1-60487f62a681" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_3ae08036-82f8-45b2-b706-dba0aa437d6b" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_acbfb850-dae2-4ce4-b1b6-7a287fc430bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_acbfb850-dae2-4ce4-b1b6-7a287fc430bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_2bc8ae8f-b2b0-4c27-b889-75394480d88e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_2bc8ae8f-b2b0-4c27-b889-75394480d88e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_8bf5275f-2cb9-4362-946f-59f8bcb87f45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_8bf5275f-2cb9-4362-946f-59f8bcb87f45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_71994294-e42d-48fc-9018-bd02e9fe6363" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_71994294-e42d-48fc-9018-bd02e9fe6363" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_927c061b-b257-4e08-9820-3c53fbf22597" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_Depreciation"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_efc4e4d3-80c4-469b-a4dd-1bfac77de8ba" xlink:to="loc_us-gaap_Depreciation_927c061b-b257-4e08-9820-3c53fbf22597" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Leases" xlink:type="simple" xlink:href="efoi-20210331.xsd#Leases"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/Leases" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_ef3293fa-aeb9-42b7-a02b-13dce777dc90" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeFinanceLeasesTextBlock_7d5308d6-99ff-4013-985b-cc3343b3dc14" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeFinanceLeasesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ef3293fa-aeb9-42b7-a02b-13dce777dc90" xlink:to="loc_us-gaap_LesseeFinanceLeasesTextBlock_7d5308d6-99ff-4013-985b-cc3343b3dc14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_0f70ff8e-7043-4fa6-b5d9-20990a7dd8a8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ef3293fa-aeb9-42b7-a02b-13dce777dc90" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_0f70ff8e-7043-4fa6-b5d9-20990a7dd8a8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesTables"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/LeasesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_4d8342cc-8782-4964-94d5-7f8032bdc6fb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_ab2150a4-cd69-4aa3-831c-6ae07c993591" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4d8342cc-8782-4964-94d5-7f8032bdc6fb" xlink:to="loc_us-gaap_LeaseCostTableTextBlock_ab2150a4-cd69-4aa3-831c-6ae07c993591" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock_6b1b0d70-5253-47ab-b76e-ac850f5336d2" xlink:href="efoi-20210331.xsd#efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4d8342cc-8782-4964-94d5-7f8032bdc6fb" xlink:to="loc_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock_6b1b0d70-5253-47ab-b76e-ac850f5336d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_0d893e41-3b5d-43c2-a0eb-f3c9cc920b89" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4d8342cc-8782-4964-94d5-7f8032bdc6fb" xlink:to="loc_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock_0d893e41-3b5d-43c2-a0eb-f3c9cc920b89" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_33a7b3c0-62ff-498c-9ea8-a33c2aa2d1a5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4d8342cc-8782-4964-94d5-7f8032bdc6fb" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_33a7b3c0-62ff-498c-9ea8-a33c2aa2d1a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_a5f3cfce-0ce3-4871-996c-465acba7cec9" xlink:href="efoi-20210331.xsd#efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_4d8342cc-8782-4964-94d5-7f8032bdc6fb" xlink:to="loc_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock_a5f3cfce-0ce3-4871-996c-465acba7cec9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesNarrativeDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/LeasesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_b92b4391-bf0a-47f6-95f9-193cf41724ec" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LesseeOperatingLeaseInterestRateEffectiveRate_601e3353-f5fe-4721-b956-892f9b67a0d2" xlink:href="efoi-20210331.xsd#efoi_LesseeOperatingLeaseInterestRateEffectiveRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_b92b4391-bf0a-47f6-95f9-193cf41724ec" xlink:to="loc_efoi_LesseeOperatingLeaseInterestRateEffectiveRate_601e3353-f5fe-4721-b956-892f9b67a0d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseDiscountRate_de38e65e-7967-4db2-8fd6-e62f7eef0b14" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseDiscountRate"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_b92b4391-bf0a-47f6-95f9-193cf41724ec" xlink:to="loc_us-gaap_LesseeOperatingLeaseDiscountRate_de38e65e-7967-4db2-8fd6-e62f7eef0b14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_cd3b02dc-1cd0-435c-9ab6-0afe12117a05" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_b92b4391-bf0a-47f6-95f9-193cf41724ec" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_cd3b02dc-1cd0-435c-9ab6-0afe12117a05" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm_d9149bc2-40ce-4bdf-ae74-1dba2a43c4fa" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_b92b4391-bf0a-47f6-95f9-193cf41724ec" xlink:to="loc_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm_d9149bc2-40ce-4bdf-ae74-1dba2a43c4fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1_cec57e22-d16d-41fc-8274-1646df2275be" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_b92b4391-bf0a-47f6-95f9-193cf41724ec" xlink:to="loc_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1_cec57e22-d16d-41fc-8274-1646df2275be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCash_5792e381-d7eb-4905-a163-850b39e912e9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedCash"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_b92b4391-bf0a-47f6-95f9-193cf41724ec" xlink:to="loc_us-gaap_RestrictedCash_5792e381-d7eb-4905-a163-850b39e912e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesComponentsofLeaseCostDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_ed839e6f-7930-4998-a3d5-5b6976f7948f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubleaseIncome_ba76c853-8e3b-42ac-ab6c-314f33b068d9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubleaseIncome"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ed839e6f-7930-4998-a3d5-5b6976f7948f" xlink:to="loc_us-gaap_SubleaseIncome_ba76c853-8e3b-42ac-ab6c-314f33b068d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_5b3856ad-9a9d-4e17-8bcd-8c8793e634a8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseCost"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ed839e6f-7930-4998-a3d5-5b6976f7948f" xlink:to="loc_us-gaap_OperatingLeaseCost_5b3856ad-9a9d-4e17-8bcd-8c8793e634a8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome_4636c266-6061-413f-8d0d-a2b6c37dd266" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseCostNetOfSubleaseIncome"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ed839e6f-7930-4998-a3d5-5b6976f7948f" xlink:to="loc_efoi_OperatingLeaseCostNetOfSubleaseIncome_4636c266-6061-413f-8d0d-a2b6c37dd266" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseSubleaseIncome_bf5f8f75-e6e5-4068-9744-aa497af8ee2f" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeaseSubleaseIncome"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ed839e6f-7930-4998-a3d5-5b6976f7948f" xlink:to="loc_efoi_RestructuredLeaseSubleaseIncome_bf5f8f75-e6e5-4068-9744-aa497af8ee2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseOperatingLeaseCost_606b7f06-e844-4308-9596-541703f154af" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeaseOperatingLeaseCost"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ed839e6f-7930-4998-a3d5-5b6976f7948f" xlink:to="loc_efoi_RestructuredLeaseOperatingLeaseCost_606b7f06-e844-4308-9596-541703f154af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_bfe8c58d-0e7f-481a-8ef9-95f1b715714b" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ed839e6f-7930-4998-a3d5-5b6976f7948f" xlink:to="loc_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome_bfe8c58d-0e7f-481a-8ef9-95f1b715714b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_2023b370-7468-4fe1-ba08-8ee43d362377" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeaseCost"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ed839e6f-7930-4998-a3d5-5b6976f7948f" xlink:to="loc_us-gaap_LeaseCost_2023b370-7468-4fe1-ba08-8ee43d362377" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesScheduleofSupplementalBalanceSheetInformationDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_883047e2-a8e0-4a42-b3d4-e49df39628d7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesOperatingAbstract_52e79b9a-efa1-4fe1-941b-e2307788221b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesOperatingAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_883047e2-a8e0-4a42-b3d4-e49df39628d7" xlink:to="loc_us-gaap_LeasesOperatingAbstract_52e79b9a-efa1-4fe1-941b-e2307788221b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_7a5373d7-3056-4b33-8add-11a98fefb79b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesOperatingAbstract_52e79b9a-efa1-4fe1-941b-e2307788221b" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_7a5373d7-3056-4b33-8add-11a98fefb79b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseRightOfUseAsset_5ce13027-5259-4e87-8027-20498c4e569f" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesOperatingAbstract_52e79b9a-efa1-4fe1-941b-e2307788221b" xlink:to="loc_efoi_RestructuredOperatingLeaseRightOfUseAsset_5ce13027-5259-4e87-8027-20498c4e569f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases_b5c2dcf8-bedd-4602-bb3f-a9bc3cab454c" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesOperatingAbstract_52e79b9a-efa1-4fe1-941b-e2307788221b" xlink:to="loc_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases_b5c2dcf8-bedd-4602-bb3f-a9bc3cab454c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_a5cf6e1a-1ae2-4a43-b2e3-dd9c14b59bf5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesOperatingAbstract_52e79b9a-efa1-4fe1-941b-e2307788221b" xlink:to="loc_us-gaap_OperatingLeaseLiability_a5cf6e1a-1ae2-4a43-b2e3-dd9c14b59bf5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseLiability_5544ea8a-0474-43b8-8a44-155f8d87f53f" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseLiability"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesOperatingAbstract_52e79b9a-efa1-4fe1-941b-e2307788221b" xlink:to="loc_efoi_RestructuredOperatingLeaseLiability_5544ea8a-0474-43b8-8a44-155f8d87f53f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases_1ae0ed71-9fab-4886-b7b5-a1b2f0a1fb46" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseLiabilityIncludingRestructuredLeases"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesOperatingAbstract_52e79b9a-efa1-4fe1-941b-e2307788221b" xlink:to="loc_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases_1ae0ed71-9fab-4886-b7b5-a1b2f0a1fb46" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeFinanceLeaseDescriptionAbstract_936c4ae6-2d12-42b7-8c2a-97ed5bc4e9a0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeFinanceLeaseDescriptionAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_883047e2-a8e0-4a42-b3d4-e49df39628d7" xlink:to="loc_us-gaap_LesseeFinanceLeaseDescriptionAbstract_936c4ae6-2d12-42b7-8c2a-97ed5bc4e9a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetGross_291c5e48-84b9-4ebb-b78b-49436c860298" xlink:href="efoi-20210331.xsd#efoi_FinanceLeaseRightOfUseAssetGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeFinanceLeaseDescriptionAbstract_936c4ae6-2d12-42b7-8c2a-97ed5bc4e9a0" xlink:to="loc_efoi_FinanceLeaseRightOfUseAssetGross_291c5e48-84b9-4ebb-b78b-49436c860298" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation_7ebf256d-6fc1-4957-9abe-904e0b6cc3d2" xlink:href="efoi-20210331.xsd#efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeFinanceLeaseDescriptionAbstract_936c4ae6-2d12-42b7-8c2a-97ed5bc4e9a0" xlink:to="loc_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation_7ebf256d-6fc1-4957-9abe-904e0b6cc3d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseRightOfUseAsset_8f299f1d-8ab2-4b66-be02-80842623b035" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseRightOfUseAsset"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeFinanceLeaseDescriptionAbstract_936c4ae6-2d12-42b7-8c2a-97ed5bc4e9a0" xlink:to="loc_us-gaap_FinanceLeaseRightOfUseAsset_8f299f1d-8ab2-4b66-be02-80842623b035" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability_cf590d78-2a55-4249-9543-63c4376ed79b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeFinanceLeaseDescriptionAbstract_936c4ae6-2d12-42b7-8c2a-97ed5bc4e9a0" xlink:to="loc_us-gaap_FinanceLeaseLiability_cf590d78-2a55-4249-9543-63c4376ed79b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_6977db3a-a8c6-4d9c-b413-c7dde2c5de9b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_0459845f-df19-4f28-8c56-463d61ca2513" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_6977db3a-a8c6-4d9c-b413-c7dde2c5de9b" xlink:to="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_0459845f-df19-4f28-8c56-463d61ca2513" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_546ad337-bcf3-4dc3-b5f4-6b8f9b8f624a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_0459845f-df19-4f28-8c56-463d61ca2513" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_546ad337-bcf3-4dc3-b5f4-6b8f9b8f624a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_8a011563-8b36-41de-be58-cdfa507188c9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_0459845f-df19-4f28-8c56-463d61ca2513" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_8a011563-8b36-41de-be58-cdfa507188c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_b856ac7d-0888-4569-950e-794968339ba1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_0459845f-df19-4f28-8c56-463d61ca2513" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_b856ac7d-0888-4569-950e-794968339ba1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_63de9b0b-3bfa-4fc1-a498-a91e432df24f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_0459845f-df19-4f28-8c56-463d61ca2513" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_63de9b0b-3bfa-4fc1-a498-a91e432df24f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_f55c43ac-0857-4e97-90e3-53eb0a37a006" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_0459845f-df19-4f28-8c56-463d61ca2513" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_f55c43ac-0857-4e97-90e3-53eb0a37a006" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_495fc85a-fed3-432d-933d-a843cf1c5ec0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_0459845f-df19-4f28-8c56-463d61ca2513" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_495fc85a-fed3-432d-933d-a843cf1c5ec0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_15e963d4-a5a0-4003-81e6-13865556f1d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_0459845f-df19-4f28-8c56-463d61ca2513" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_15e963d4-a5a0-4003-81e6-13865556f1d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_ea5e798e-d7ad-4f30-b19d-b401e7025e83" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_0459845f-df19-4f28-8c56-463d61ca2513" xlink:to="loc_us-gaap_OperatingLeaseLiability_ea5e798e-d7ad-4f30-b19d-b401e7025e83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_b7a47cc2-48d2-4b8e-9a82-b90e9b5f81ad" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_6977db3a-a8c6-4d9c-b413-c7dde2c5de9b" xlink:to="loc_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_b7a47cc2-48d2-4b8e-9a82-b90e9b5f81ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_fc2703e7-e0af-4e58-844e-0ab5507b02ba" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_b7a47cc2-48d2-4b8e-9a82-b90e9b5f81ad" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths_fc2703e7-e0af-4e58-844e-0ab5507b02ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_ee47b5f2-9599-4e99-bc48-99e126fb9317" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_b7a47cc2-48d2-4b8e-9a82-b90e9b5f81ad" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo_ee47b5f2-9599-4e99-bc48-99e126fb9317" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_9458f929-917c-438d-8f6c-48a624b83d18" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_b7a47cc2-48d2-4b8e-9a82-b90e9b5f81ad" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree_9458f929-917c-438d-8f6c-48a624b83d18" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_1b5f02af-428e-46f5-977a-d16261fb3f0d" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_b7a47cc2-48d2-4b8e-9a82-b90e9b5f81ad" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour_1b5f02af-428e-46f5-977a-d16261fb3f0d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_f69350a5-3f3d-4813-a8f8-21db58889a30" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_b7a47cc2-48d2-4b8e-9a82-b90e9b5f81ad" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive_f69350a5-3f3d-4813-a8f8-21db58889a30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_7b98d401-7498-4cb4-9c05-41b43ed4804d" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_b7a47cc2-48d2-4b8e-9a82-b90e9b5f81ad" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue_7b98d401-7498-4cb4-9c05-41b43ed4804d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount_51c2bb71-19ac-4cb3-af26-38b9ac264061" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_b7a47cc2-48d2-4b8e-9a82-b90e9b5f81ad" xlink:to="loc_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount_51c2bb71-19ac-4cb3-af26-38b9ac264061" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredOperatingLeaseLiability_38edbcdf-25fd-47f3-b12a-d8ec79c144b9" xlink:href="efoi-20210331.xsd#efoi_RestructuredOperatingLeaseLiability"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract_b7a47cc2-48d2-4b8e-9a82-b90e9b5f81ad" xlink:to="loc_efoi_RestructuredOperatingLeaseLiability_38edbcdf-25fd-47f3-b12a-d8ec79c144b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract_02bcb2ef-7aad-4e57-91b5-e2f3586dffad" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_6977db3a-a8c6-4d9c-b413-c7dde2c5de9b" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract_02bcb2ef-7aad-4e57-91b5-e2f3586dffad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths_008614f3-df83-40a9-9dac-5b324253935f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract_02bcb2ef-7aad-4e57-91b5-e2f3586dffad" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths_008614f3-df83-40a9-9dac-5b324253935f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo_a5ea2771-8f47-4208-b204-0bf411759eab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract_02bcb2ef-7aad-4e57-91b5-e2f3586dffad" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo_a5ea2771-8f47-4208-b204-0bf411759eab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree_4204240f-db1b-4bf2-891a-ef784514083c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract_02bcb2ef-7aad-4e57-91b5-e2f3586dffad" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree_4204240f-db1b-4bf2-891a-ef784514083c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour_c64bfd44-ea43-411f-a95d-4fc4ea42c6b1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract_02bcb2ef-7aad-4e57-91b5-e2f3586dffad" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour_c64bfd44-ea43-411f-a95d-4fc4ea42c6b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive_2a6d54cc-70ce-4de2-80f1-d91afdea214d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract_02bcb2ef-7aad-4e57-91b5-e2f3586dffad" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive_2a6d54cc-70ce-4de2-80f1-d91afdea214d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_4e111430-ea1e-4d72-ab4c-d94f8d14b093" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LessorOperatingLeasePaymentsToBeReceived"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract_02bcb2ef-7aad-4e57-91b5-e2f3586dffad" xlink:to="loc_us-gaap_LessorOperatingLeasePaymentsToBeReceived_4e111430-ea1e-4d72-ab4c-d94f8d14b093" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount_445efbaa-55e9-4cf3-8dd0-82ca7a7f462b" xlink:href="efoi-20210331.xsd#efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract_02bcb2ef-7aad-4e57-91b5-e2f3586dffad" xlink:to="loc_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount_445efbaa-55e9-4cf3-8dd0-82ca7a7f462b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_OperatingLeaseReceivable_5277257c-6233-40a3-9140-40d0559bc6b6" xlink:href="efoi-20210331.xsd#efoi_OperatingLeaseReceivable"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract_02bcb2ef-7aad-4e57-91b5-e2f3586dffad" xlink:to="loc_efoi_OperatingLeaseReceivable_5277257c-6233-40a3-9140-40d0559bc6b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract_47a050e4-e3f6-4130-8dda-bcfedc239c7d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_6977db3a-a8c6-4d9c-b413-c7dde2c5de9b" xlink:to="loc_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract_47a050e4-e3f6-4130-8dda-bcfedc239c7d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths_e09e15b8-da66-4271-abb0-7411c7782b07" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract_47a050e4-e3f6-4130-8dda-bcfedc239c7d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths_e09e15b8-da66-4271-abb0-7411c7782b07" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo_0889c5e0-2ed3-4745-b29b-0ebf6053542c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract_47a050e4-e3f6-4130-8dda-bcfedc239c7d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo_0889c5e0-2ed3-4745-b29b-0ebf6053542c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree_7ca8e793-e28f-48ad-8cf7-d95c2a02f6ad" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract_47a050e4-e3f6-4130-8dda-bcfedc239c7d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree_7ca8e793-e28f-48ad-8cf7-d95c2a02f6ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour_0722a6dd-a263-4842-bf0d-a539e34c43fa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract_47a050e4-e3f6-4130-8dda-bcfedc239c7d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour_0722a6dd-a263-4842-bf0d-a539e34c43fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive_4c05da87-e87e-4633-9d97-38034c7d759a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract_47a050e4-e3f6-4130-8dda-bcfedc239c7d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive_4c05da87-e87e-4633-9d97-38034c7d759a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_056e781a-87b9-49af-938c-3020554c68a3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract_47a050e4-e3f6-4130-8dda-bcfedc239c7d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityPaymentsDue_056e781a-87b9-49af-938c-3020554c68a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_7cc5d6aa-3a0c-47b8-8848-1f3b7a75d58f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract_47a050e4-e3f6-4130-8dda-bcfedc239c7d" xlink:to="loc_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_7cc5d6aa-3a0c-47b8-8848-1f3b7a75d58f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeaseLiability_842e0a58-cb44-4ba9-8340-3f0c5fc4530f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeaseLiability"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract_47a050e4-e3f6-4130-8dda-bcfedc239c7d" xlink:to="loc_us-gaap_FinanceLeaseLiability_842e0a58-cb44-4ba9-8340-3f0c5fc4530f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#LeasesScheduleofSupplementalCashFlowInformationDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_fecf7e80-c7d8-48f9-b64e-0ec10922ad2e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments_39c1e0ab-6d27-46cf-bcdb-b8b7824e9f43" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLeasePayments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_fecf7e80-c7d8-48f9-b64e-0ec10922ad2e" xlink:to="loc_us-gaap_OperatingLeasePayments_39c1e0ab-6d27-46cf-bcdb-b8b7824e9f43" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_RestructuredLeasesOperatingLeasePayments_eb733a32-f9d5-4f34-a558-63d75db14e42" xlink:href="efoi-20210331.xsd#efoi_RestructuredLeasesOperatingLeasePayments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_fecf7e80-c7d8-48f9-b64e-0ec10922ad2e" xlink:to="loc_efoi_RestructuredLeasesOperatingLeasePayments_eb733a32-f9d5-4f34-a558-63d75db14e42" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_84c853dd-1c24-4014-8cd6-8604155d98a2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_fecf7e80-c7d8-48f9-b64e-0ec10922ad2e" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_84c853dd-1c24-4014-8cd6-8604155d98a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/Debt" xlink:type="simple" xlink:href="efoi-20210331.xsd#Debt"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/Debt" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_784f7c83-24ad-4761-bdda-d5e6b48d5e1a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureTextBlock_f2a9c870-c3ef-4356-a8d4-23280947c623" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_784f7c83-24ad-4761-bdda-d5e6b48d5e1a" xlink:to="loc_us-gaap_DebtDisclosureTextBlock_f2a9c870-c3ef-4356-a8d4-23280947c623" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtCreditFacilitiesDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_48a7ed35-8be1-492d-a018-146a12deb01a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_48a7ed35-8be1-492d-a018-146a12deb01a" xlink:to="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_dfa5e3bb-2e5e-4d6c-a09e-2bb509d0db48" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:to="loc_us-gaap_CreditFacilityAxis_dfa5e3bb-2e5e-4d6c-a09e-2bb509d0db48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_6987681a-b0ae-41d6-94e1-e7f3948ac20c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_dfa5e3bb-2e5e-4d6c-a09e-2bb509d0db48" xlink:to="loc_us-gaap_CreditFacilityDomain_6987681a-b0ae-41d6-94e1-e7f3948ac20c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_a50feef1-1577-449c-a3f6-360d81610362" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_6987681a-b0ae-41d6-94e1-e7f3948ac20c" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_a50feef1-1577-449c-a3f6-360d81610362" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_4a5fdb5f-9932-4ea5-8d99-c2757e3d0a3b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:to="loc_us-gaap_DebtInstrumentAxis_4a5fdb5f-9932-4ea5-8d99-c2757e3d0a3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_9b48b725-0494-4bf7-8fb8-46a46efe7e8b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_4a5fdb5f-9932-4ea5-8d99-c2757e3d0a3b" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_9b48b725-0494-4bf7-8fb8-46a46efe7e8b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryFacilityMember_7ef7aeb2-a1ee-4e0a-97ea-6488af90718c" xlink:href="efoi-20210331.xsd#efoi_InventoryFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_9b48b725-0494-4bf7-8fb8-46a46efe7e8b" xlink:to="loc_efoi_InventoryFacilityMember_7ef7aeb2-a1ee-4e0a-97ea-6488af90718c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ReceivablesFacilityMember_1ced5c20-47d8-476a-a405-5bf337b9819b" xlink:href="efoi-20210331.xsd#efoi_ReceivablesFacilityMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_9b48b725-0494-4bf7-8fb8-46a46efe7e8b" xlink:to="loc_efoi_ReceivablesFacilityMember_1ced5c20-47d8-476a-a405-5bf337b9819b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_AustinFacilityMember_365e06fc-8843-49bf-b7c2-38af811effe4" xlink:href="efoi-20210331.xsd#efoi_AustinFacilityMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_9b48b725-0494-4bf7-8fb8-46a46efe7e8b" xlink:to="loc_efoi_AustinFacilityMember_365e06fc-8843-49bf-b7c2-38af811effe4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_a08f318e-d389-458b-a7ce-f868afffaa05" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:to="loc_us-gaap_VariableRateAxis_a08f318e-d389-458b-a7ce-f868afffaa05" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_d75bffca-e374-4a25-8aae-1dc8349b69a4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_VariableRateDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateAxis_a08f318e-d389-458b-a7ce-f868afffaa05" xlink:to="loc_us-gaap_VariableRateDomain_d75bffca-e374-4a25-8aae-1dc8349b69a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_c6cd0c4a-96fc-4522-81c8-af348a2885ce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LondonInterbankOfferedRateLIBORMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_d75bffca-e374-4a25-8aae-1dc8349b69a4" xlink:to="loc_us-gaap_LondonInterbankOfferedRateLIBORMember_c6cd0c4a-96fc-4522-81c8-af348a2885ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrimeRateMember_a9c53e60-de5a-4b99-b81f-83114a46f826" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrimeRateMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_d75bffca-e374-4a25-8aae-1dc8349b69a4" xlink:to="loc_us-gaap_PrimeRateMember_a9c53e60-de5a-4b99-b81f-83114a46f826" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_cf34e047-c95b-4b83-a850-a1b413001e09" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_cf34e047-c95b-4b83-a850-a1b413001e09" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_56952f72-0e66-4a53-a6b3-ce301c9d860b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_cf34e047-c95b-4b83-a850-a1b413001e09" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_56952f72-0e66-4a53-a6b3-ce301c9d860b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_6503dfbc-4edc-4137-9212-a629955e7c2a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_56952f72-0e66-4a53-a6b3-ce301c9d860b" xlink:to="loc_us-gaap_SubsequentEventMember_6503dfbc-4edc-4137-9212-a629955e7c2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_fc5cf447-dab9-414e-89bf-180ad3b8a055" xlink:to="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentNumberOfCreditFacilities_54502d96-817e-4371-adb3-dfef6fd58c0b" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentNumberOfCreditFacilities"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_DebtInstrumentNumberOfCreditFacilities_54502d96-817e-4371-adb3-dfef6fd58c0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_960acf5b-234a-408c-8cfb-cbe6194782fc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_960acf5b-234a-408c-8cfb-cbe6194782fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_42961a38-a0b5-47c8-bd16-f44e6afe48c0" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_42961a38-a0b5-47c8-bd16-f44e6afe48c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_9426cde8-6434-4a29-b57b-ba63da95efa6" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_9426cde8-6434-4a29-b57b-ba63da95efa6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_2fd07a33-3c4a-4b34-947e-9bf80dbe5eb1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_2fd07a33-3c4a-4b34-947e-9bf80dbe5eb1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent_6ebf76fd-22e5-4bf4-b58a-edb26ddef898" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityMonthlyFacilityFeePercent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent_6ebf76fd-22e5-4bf4-b58a-edb26ddef898" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityMonthlyFacilityFee_1c344b11-3a6d-4cf3-8a30-d3bf5f00b599" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityMonthlyFacilityFee"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityMonthlyFacilityFee_1c344b11-3a6d-4cf3-8a30-d3bf5f00b599" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent_0e175f33-baaf-4a88-b1cc-5cd316092a48" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent_0e175f33-baaf-4a88-b1cc-5cd316092a48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee_7e253895-0389-419f-92e9-467bf849dc4d" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee_7e253895-0389-419f-92e9-467bf849dc4d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnamortizedDebtIssuanceExpense_bca4462a-a77c-4e45-bbfd-87b5bf950613" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_UnamortizedDebtIssuanceExpense"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_UnamortizedDebtIssuanceExpense_bca4462a-a77c-4e45-bbfd-87b5bf950613" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LinesOfCreditCurrent_7bcbeb38-02e0-4f15-a49d-3f51f4e9c552" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LinesOfCreditCurrent"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_LinesOfCreditCurrent_7bcbeb38-02e0-4f15-a49d-3f51f4e9c552" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityExpirationPeriod_224b671d-555e-4557-9c08-74a52397f253" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityExpirationPeriod"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_LineOfCreditFacilityExpirationPeriod_224b671d-555e-4557-9c08-74a52397f253" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_74f1789c-6fc3-475c-a132-3e0910de838c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_74f1789c-6fc3-475c-a132-3e0910de838c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_ed3a9f8d-2f59-4c3b-8181-716e3bb22b05" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityCommitmentFeePercentage"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_ed3a9f8d-2f59-4c3b-8181-716e3bb22b05" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod_7784090d-4e2a-4bd4-b4a8-78b964b4968f" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityAnnualFacilityFeePeriod"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod_7784090d-4e2a-4bd4-b4a8-78b964b4968f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityCollateralManagementFee_be8a544a-110b-4870-90e1-b11e29fcf745" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityCollateralManagementFee"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_efoi_LineOfCreditFacilityCollateralManagementFee_be8a544a-110b-4870-90e1-b11e29fcf745" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDebtExtinguishmentCosts_da18ab7e-0a8b-4719-96d1-ad61e74af0e8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsOfDebtExtinguishmentCosts"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_PaymentsOfDebtExtinguishmentCosts_da18ab7e-0a8b-4719-96d1-ad61e74af0e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFeeAmount_d08c360a-0c45-4cf0-b0a7-5ec9bbd9f211" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentFeeAmount"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_DebtInstrumentFeeAmount_d08c360a-0c45-4cf0-b0a7-5ec9bbd9f211" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_cfbf38f1-bc6e-4099-bb3c-b0ccc312f942" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_b9215ebc-582d-48b1-b728-d76feca9e080" xlink:to="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_cfbf38f1-bc6e-4099-bb3c-b0ccc312f942" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtConvertibleNotesDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_bbd323b8-d6bb-4053-86b0-921fae9914c3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_14285e77-4237-4ac4-aba7-5f7da1c1ae40" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_bbd323b8-d6bb-4053-86b0-921fae9914c3" xlink:to="loc_us-gaap_LineOfCreditFacilityTable_14285e77-4237-4ac4-aba7-5f7da1c1ae40" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_7d34f71c-ff10-42d3-89ec-ef533da8c1d5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_14285e77-4237-4ac4-aba7-5f7da1c1ae40" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_7d34f71c-ff10-42d3-89ec-ef533da8c1d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_ba262d6d-dac2-4886-8f9f-b9e7f9ebbf61" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_7d34f71c-ff10-42d3-89ec-ef533da8c1d5" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_ba262d6d-dac2-4886-8f9f-b9e7f9ebbf61" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertibleDebtMember_b30c858d-6f47-4587-abf6-9bd8dc8f1552" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertibleDebtMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_ba262d6d-dac2-4886-8f9f-b9e7f9ebbf61" xlink:to="loc_us-gaap_ConvertibleDebtMember_b30c858d-6f47-4587-abf6-9bd8dc8f1552" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_8d598842-a115-47bb-8cef-2402ffe9104b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_14285e77-4237-4ac4-aba7-5f7da1c1ae40" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_8d598842-a115-47bb-8cef-2402ffe9104b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_0ef6de31-8c95-440e-8c2d-83d802898d21" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_8d598842-a115-47bb-8cef-2402ffe9104b" xlink:to="loc_us-gaap_EquityComponentDomain_0ef6de31-8c95-440e-8c2d-83d802898d21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_bf88ad49-6503-436a-bdd1-bdee6e0a61ad" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_0ef6de31-8c95-440e-8c2d-83d802898d21" xlink:to="loc_us-gaap_PreferredStockMember_bf88ad49-6503-436a-bdd1-bdee6e0a61ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_af70103e-4e62-4423-9074-c26ae91c563e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_0ef6de31-8c95-440e-8c2d-83d802898d21" xlink:to="loc_us-gaap_CommonStockMember_af70103e-4e62-4423-9074-c26ae91c563e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_11ba3dcd-9fcd-4b81-a316-887f384a1446" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_14285e77-4237-4ac4-aba7-5f7da1c1ae40" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_11ba3dcd-9fcd-4b81-a316-887f384a1446" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_a90e3545-6c02-48f3-afe6-9677b83ff8c3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_11ba3dcd-9fcd-4b81-a316-887f384a1446" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_a90e3545-6c02-48f3-afe6-9677b83ff8c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_161890b3-c9e8-495e-8671-2fb778f9f78b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_a90e3545-6c02-48f3-afe6-9677b83ff8c3" xlink:to="loc_us-gaap_SubsequentEventMember_161890b3-c9e8-495e-8671-2fb778f9f78b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_14285e77-4237-4ac4-aba7-5f7da1c1ae40" xlink:to="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt_1f734f19-d944-4733-bdc1-f8e37f296de0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt_1f734f19-d944-4733-bdc1-f8e37f296de0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt_204f8403-860f-4d1c-8cfd-38f9ae81eca9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtConversionOriginalDebtInterestRateOfDebt"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt_204f8403-860f-4d1c-8cfd-38f9ae81eca9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_AccumulatedInterestOnSubordinatedDebt_c9680799-f686-466a-a595-6871dbbebb43" xlink:href="efoi-20210331.xsd#efoi_AccumulatedInterestOnSubordinatedDebt"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_efoi_AccumulatedInterestOnSubordinatedDebt_c9680799-f686-466a-a595-6871dbbebb43" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_31216988-63b2-4da8-87c3-2f986c975dd0" xlink:href="efoi-20210331.xsd#efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_31216988-63b2-4da8-87c3-2f986c975dd0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_7f785df6-1964-4b6b-a708-2fbb3a9a0ffc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentConvertibleConversionPrice1"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_7f785df6-1964-4b6b-a708-2fbb3a9a0ffc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_f77bed0d-aba7-4270-b4bc-24c378f7e82b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_f77bed0d-aba7-4270-b4bc-24c378f7e82b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConversionOfStockSharesConverted1_4d8c722d-0b87-4070-802b-c483537eb332" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConversionOfStockSharesConverted1"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_ConversionOfStockSharesConverted1_4d8c722d-0b87-4070-802b-c483537eb332" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_0921a7ce-dcbb-48e4-b81f-6c551694e33c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_2fabbd16-82ea-47ab-a985-ba032800d0c6" xlink:to="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_0921a7ce-dcbb-48e4-b81f-6c551694e33c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtIliadNoteDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtIliadNoteDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/DebtIliadNoteDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_763dd988-1264-41cc-bf57-48b463f4c861" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_58a8b021-b5fe-4ca6-b3da-ca6961b0da2e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_763dd988-1264-41cc-bf57-48b463f4c861" xlink:to="loc_us-gaap_DebtInstrumentTable_58a8b021-b5fe-4ca6-b3da-ca6961b0da2e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_6dfb1c64-d57d-44b9-80fe-668c8787bbf2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_58a8b021-b5fe-4ca6-b3da-ca6961b0da2e" xlink:to="loc_us-gaap_DebtInstrumentAxis_6dfb1c64-d57d-44b9-80fe-668c8787bbf2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_884fe0f6-fe4a-4fda-9397-02117a63f2b7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_6dfb1c64-d57d-44b9-80fe-668c8787bbf2" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_884fe0f6-fe4a-4fda-9397-02117a63f2b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NotePurchaseAgreementMember_f3ae1aff-f977-4025-8e1a-fbfa944d0096" xlink:href="efoi-20210331.xsd#efoi_NotePurchaseAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_884fe0f6-fe4a-4fda-9397-02117a63f2b7" xlink:to="loc_efoi_NotePurchaseAgreementMember_f3ae1aff-f977-4025-8e1a-fbfa944d0096" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_58a8b021-b5fe-4ca6-b3da-ca6961b0da2e" xlink:to="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_7528caf1-af29-4884-874b-a6ec907c02c4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_7528caf1-af29-4884-874b-a6ec907c02c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedPremium_d5c94970-1af2-472c-b1ca-77b3eaa41e21" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentUnamortizedPremium"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedPremium_d5c94970-1af2-472c-b1ca-77b3eaa41e21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt_1a56551e-cf4b-4574-9215-b024aa546f45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfDebt_1a56551e-cf4b-4574-9215-b024aa546f45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsGross_9c4cf742-3ec4-40d6-9762-b80854c961be" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredFinanceCostsGross"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DeferredFinanceCostsGross_9c4cf742-3ec4-40d6-9762-b80854c961be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_0477b66e-204d-43a6-a5dd-50fcf8aa5043" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_WriteOffOfDeferredDebtIssuanceCost"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_WriteOffOfDeferredDebtIssuanceCost_0477b66e-204d-43a6-a5dd-50fcf8aa5043" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_fe13bb9e-27a2-4f8a-ab26-6cca5a1c66bd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_fe13bb9e-27a2-4f8a-ab26-6cca5a1c66bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_e4c9682c-d6c9-460f-9dba-0822de3e183e" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentProceedsToBePaidToLenderPercent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_e4c9682c-d6c9-460f-9dba-0822de3e183e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_9b18516e-d4ce-4349-b134-9d744075fb67" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOrSaleOfEquity"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_9b18516e-d4ce-4349-b134-9d744075fb67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable_c0d29521-81c2-4b74-9259-4d44b0fde18f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_RepaymentsOfNotesPayable_c0d29521-81c2-4b74-9259-4d44b0fde18f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentCarryingAmount_48419a5e-5dad-4779-b2ce-b1a3c7018ddf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentCarryingAmount"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DebtInstrumentCarryingAmount_48419a5e-5dad-4779-b2ce-b1a3c7018ddf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_24391942-ac1a-4fcc-8803-cd4b20f290d8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_6a91f059-389c-467f-9418-e5b1934a456a" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet_24391942-ac1a-4fcc-8803-cd4b20f290d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtStreetervilleNoteDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_56637e87-8e0b-4c84-a677-5e8fee4d899a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_617e7ebf-413a-427d-8aa9-39ece822e4d5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_56637e87-8e0b-4c84-a677-5e8fee4d899a" xlink:to="loc_us-gaap_DebtInstrumentTable_617e7ebf-413a-427d-8aa9-39ece822e4d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_eff9a6fc-0644-4a2b-b159-3c7cb6f99ddd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_617e7ebf-413a-427d-8aa9-39ece822e4d5" xlink:to="loc_us-gaap_DebtInstrumentAxis_eff9a6fc-0644-4a2b-b159-3c7cb6f99ddd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_76669b31-c91e-497d-8ec3-58b03167de01" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_eff9a6fc-0644-4a2b-b159-3c7cb6f99ddd" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_76669b31-c91e-497d-8ec3-58b03167de01" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StreetervilleNotePurchaseAgreementMember_da96fcfc-62b1-4432-aea6-98b8471719f6" xlink:href="efoi-20210331.xsd#efoi_StreetervilleNotePurchaseAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_76669b31-c91e-497d-8ec3-58b03167de01" xlink:to="loc_efoi_StreetervilleNotePurchaseAgreementMember_da96fcfc-62b1-4432-aea6-98b8471719f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_dbd16af2-e7e1-412b-a626-2adf96594558" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_617e7ebf-413a-427d-8aa9-39ece822e4d5" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_dbd16af2-e7e1-412b-a626-2adf96594558" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_10a16890-9a4f-4006-882d-529e8bb84ba8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_dbd16af2-e7e1-412b-a626-2adf96594558" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_10a16890-9a4f-4006-882d-529e8bb84ba8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_cb7de0ea-df53-40b3-adf2-603ab1db815e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_10a16890-9a4f-4006-882d-529e8bb84ba8" xlink:to="loc_us-gaap_SubsequentEventMember_cb7de0ea-df53-40b3-adf2-603ab1db815e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_98293706-b9fd-4cfc-a009-a45d65a7f170" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_617e7ebf-413a-427d-8aa9-39ece822e4d5" xlink:to="loc_us-gaap_DebtInstrumentLineItems_98293706-b9fd-4cfc-a009-a45d65a7f170" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_97ce1074-c824-4e47-8b09-dd4dc6460f21" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_98293706-b9fd-4cfc-a009-a45d65a7f170" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_97ce1074-c824-4e47-8b09-dd4dc6460f21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount_c3d2201b-f29a-4c8b-93b9-44e9bd21a3a6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_98293706-b9fd-4cfc-a009-a45d65a7f170" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscount_c3d2201b-f29a-4c8b-93b9-44e9bd21a3a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt_32109cc0-61d2-4f76-86a6-7c7dc561e2e0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_98293706-b9fd-4cfc-a009-a45d65a7f170" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfDebt_32109cc0-61d2-4f76-86a6-7c7dc561e2e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsGross_f2a27778-cc30-457d-9f82-28135ad6fc76" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredFinanceCostsGross"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_98293706-b9fd-4cfc-a009-a45d65a7f170" xlink:to="loc_us-gaap_DeferredFinanceCostsGross_f2a27778-cc30-457d-9f82-28135ad6fc76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/DebtPPPLoanDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#DebtPPPLoanDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/DebtPPPLoanDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_45d28454-5460-4645-8f7f-0078ff88e064" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_ec538198-6dcb-4e35-ba38-ce9005c7feae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_45d28454-5460-4645-8f7f-0078ff88e064" xlink:to="loc_us-gaap_DebtInstrumentTable_ec538198-6dcb-4e35-ba38-ce9005c7feae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_22fb52aa-2714-4575-94ab-7614732dedde" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_ec538198-6dcb-4e35-ba38-ce9005c7feae" xlink:to="loc_us-gaap_DebtInstrumentAxis_22fb52aa-2714-4575-94ab-7614732dedde" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_b5c4ff4d-85a4-4100-959a-b3d3f7ae4912" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_22fb52aa-2714-4575-94ab-7614732dedde" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_b5c4ff4d-85a4-4100-959a-b3d3f7ae4912" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaycheckProtectionProgramCARESActMember_013279f1-d70e-4be9-abeb-3ae6894c1914" xlink:href="efoi-20210331.xsd#efoi_PaycheckProtectionProgramCARESActMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_b5c4ff4d-85a4-4100-959a-b3d3f7ae4912" xlink:to="loc_efoi_PaycheckProtectionProgramCARESActMember_013279f1-d70e-4be9-abeb-3ae6894c1914" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_ec538198-6dcb-4e35-ba38-ce9005c7feae" xlink:to="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromLoanOriginations1_bb2054ae-f0cc-4fe1-93ab-c626a1960076" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromLoanOriginations1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:to="loc_us-gaap_ProceedsFromLoanOriginations1_bb2054ae-f0cc-4fe1-93ab-c626a1960076" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_2a113807-9d95-4487-8509-40132c287f8f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_2a113807-9d95-4487-8509-40132c287f8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentProtectionProgramCurrent_a2564fca-9ac5-46ba-a1e5-1aa2d3d8254a" xlink:href="efoi-20210331.xsd#efoi_PaymentProtectionProgramCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:to="loc_efoi_PaymentProtectionProgramCurrent_a2564fca-9ac5-46ba-a1e5-1aa2d3d8254a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentProtectionProgramNoncurrent_41602719-7526-4fa2-ac02-530bcccb637d" xlink:href="efoi-20210331.xsd#efoi_PaymentProtectionProgramNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:to="loc_efoi_PaymentProtectionProgramNoncurrent_41602719-7526-4fa2-ac02-530bcccb637d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_b8818557-7d7b-4b46-a656-6a577e9146a1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_72ef5407-7589-42c4-a884-4c990e853a20" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_b8818557-7d7b-4b46-a656-6a577e9146a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/IncomeTaxes" xlink:type="simple" xlink:href="efoi-20210331.xsd#IncomeTaxes"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/IncomeTaxes" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_3bdc64b6-fff2-4b05-ab15-e1119114c8dc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_6d8df7a4-9fb5-470f-9ce7-3ca9500c621e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_3bdc64b6-fff2-4b05-ab15-e1119114c8dc" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_6d8df7a4-9fb5-470f-9ce7-3ca9500c621e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#IncomeTaxesNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_777c055a-673c-49e3-912f-b6cd68837d89" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsTable_47a0100c-740c-4115-bfe1-cb4ac158a665" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwardsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_777c055a-673c-49e3-912f-b6cd68837d89" xlink:to="loc_us-gaap_OperatingLossCarryforwardsTable_47a0100c-740c-4115-bfe1-cb4ac158a665" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_b202e11e-3c86-4fc4-acc1-3bfbe94af76e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_47a0100c-740c-4115-bfe1-cb4ac158a665" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_b202e11e-3c86-4fc4-acc1-3bfbe94af76e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_9a99559f-4856-4c7b-b9a6-91433df36ff1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_b202e11e-3c86-4fc4-acc1-3bfbe94af76e" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_9a99559f-4856-4c7b-b9a6-91433df36ff1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember_ee02ab26-229e-4eae-9ae6-da76989d112e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DomesticCountryMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_9a99559f-4856-4c7b-b9a6-91433df36ff1" xlink:to="loc_us-gaap_DomesticCountryMember_ee02ab26-229e-4eae-9ae6-da76989d112e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_2d4bbc41-bcd5-4c58-add5-cb0a5798d933" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_9a99559f-4856-4c7b-b9a6-91433df36ff1" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_2d4bbc41-bcd5-4c58-add5-cb0a5798d933" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwardsLineItems_e4c73a0c-6dbb-4ccb-938d-22e3044962d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwardsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsTable_47a0100c-740c-4115-bfe1-cb4ac158a665" xlink:to="loc_us-gaap_OperatingLossCarryforwardsLineItems_e4c73a0c-6dbb-4ccb-938d-22e3044962d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_061b70d7-4aae-49f0-910b-d9536fdcb4b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwards"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_e4c73a0c-6dbb-4ccb-938d-22e3044962d6" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards_061b70d7-4aae-49f0-910b-d9536fdcb4b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations_a3178859-762f-4880-966f-0afed5c18f46" xlink:href="efoi-20210331.xsd#efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_e4c73a0c-6dbb-4ccb-938d-22e3044962d6" xlink:to="loc_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations_a3178859-762f-4880-966f-0afed5c18f46" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLossCarryforwards_a8220272-b239-4d95-8c8a-d37b5dbd45b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_OperatingLossCarryforwards"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_e4c73a0c-6dbb-4ccb-938d-22e3044962d6" xlink:to="loc_us-gaap_OperatingLossCarryforwards_a8220272-b239-4d95-8c8a-d37b5dbd45b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration_fde2316a-4b89-43cc-a3c5-d8dafe784f84" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLossCarryforwardsLineItems_e4c73a0c-6dbb-4ccb-938d-22e3044962d6" xlink:to="loc_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration_fde2316a-4b89-43cc-a3c5-d8dafe784f84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquity" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquity"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquity" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteAbstract_0b5bfbad-d29f-48d5-af0b-d7e4de42f726" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_16223083-b35c-438e-b99c-7054fb1e77d8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_0b5bfbad-d29f-48d5-af0b-d7e4de42f726" xlink:to="loc_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_16223083-b35c-438e-b99c-7054fb1e77d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityTables" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityTables"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteAbstract_26b8ea11-9afb-45ad-8524-99f5eec66f6f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_29040da0-10e7-4ecd-81af-ff31eba6dfdb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_26b8ea11-9afb-45ad-8524-99f5eec66f6f" xlink:to="loc_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock_29040da0-10e7-4ecd-81af-ff31eba6dfdb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_68747acc-75f1-44f4-91e2-09ee97bad100" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_26b8ea11-9afb-45ad-8524-99f5eec66f6f" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_68747acc-75f1-44f4-91e2-09ee97bad100" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_72a9fb17-8778-4e36-a287-e15795ba4392" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_26b8ea11-9afb-45ad-8524-99f5eec66f6f" xlink:to="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_72a9fb17-8778-4e36-a287-e15795ba4392" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_b42fc43b-3944-4fb8-aa52-f3a3fe0ce19e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_26b8ea11-9afb-45ad-8524-99f5eec66f6f" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_b42fc43b-3944-4fb8-aa52-f3a3fe0ce19e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_de1040b9-65ef-4d84-9311-6ddef4c81248" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_26b8ea11-9afb-45ad-8524-99f5eec66f6f" xlink:to="loc_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock_de1040b9-65ef-4d84-9311-6ddef4c81248" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockSplitDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityStockSplitDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityStockSplitDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteAbstract_7797bf58-27d1-4379-a09c-36f7ef54aed6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_801f12e3-dfd2-41ed-ae4c-eb298e2d4835" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteStockSplitConversionRatio1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_7797bf58-27d1-4379-a09c-36f7ef54aed6" xlink:to="loc_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1_801f12e3-dfd2-41ed-ae4c-eb298e2d4835" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_6bd4285b-8996-4a04-8b7c-10116cd574f2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_7797bf58-27d1-4379-a09c-36f7ef54aed6" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_6bd4285b-8996-4a04-8b7c-10116cd574f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_bd5a4242-8f79-48df-8a1f-d90a30d5b12e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_7797bf58-27d1-4379-a09c-36f7ef54aed6" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_bd5a4242-8f79-48df-8a1f-d90a30d5b12e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityPreferredStockDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteAbstract_d8ed2fd0-7787-428b-9455-564968bfcc24" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_d8ed2fd0-7787-428b-9455-564968bfcc24" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_101b0c1e-522c-42c0-a117-bc9b63ceec13" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_101b0c1e-522c-42c0-a117-bc9b63ceec13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_0cabc1f2-ba5d-4903-8012-cbc785dd9ee2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_101b0c1e-522c-42c0-a117-bc9b63ceec13" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_0cabc1f2-ba5d-4903-8012-cbc785dd9ee2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertibleDebtMember_3b952479-7107-44eb-a4af-2fe2917bf3a2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertibleDebtMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_0cabc1f2-ba5d-4903-8012-cbc785dd9ee2" xlink:to="loc_us-gaap_ConvertibleDebtMember_3b952479-7107-44eb-a4af-2fe2917bf3a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_828ae592-a6ed-4ffd-8eb6-f9adbeaa5466" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_828ae592-a6ed-4ffd-8eb6-f9adbeaa5466" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_3381720a-726d-4754-a54a-a748a0e453ed" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_828ae592-a6ed-4ffd-8eb6-f9adbeaa5466" xlink:to="loc_us-gaap_EquityComponentDomain_3381720a-726d-4754-a54a-a748a0e453ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_f5e9a065-bff1-40ba-9a7a-5fd0e8933950" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_3381720a-726d-4754-a54a-a748a0e453ed" xlink:to="loc_us-gaap_PreferredStockMember_f5e9a065-bff1-40ba-9a7a-5fd0e8933950" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_66708f2b-2c72-4b5f-bd31-53eebaf00a55" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_3381720a-726d-4754-a54a-a748a0e453ed" xlink:to="loc_us-gaap_CommonStockMember_66708f2b-2c72-4b5f-bd31-53eebaf00a55" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_a1af24a2-68e7-4392-a0c8-1a18a6405647" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_a1af24a2-68e7-4392-a0c8-1a18a6405647" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_18462fd0-dfa7-4995-a221-53a925a6415e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_a1af24a2-68e7-4392-a0c8-1a18a6405647" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_18462fd0-dfa7-4995-a221-53a925a6415e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_c79fb249-8f57-4848-a328-4862f78cc54d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_18462fd0-dfa7-4995-a221-53a925a6415e" xlink:to="loc_us-gaap_SubsequentEventMember_c79fb249-8f57-4848-a328-4862f78cc54d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_37e80e84-851a-4989-b597-eb962d186438" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:to="loc_us-gaap_StatementClassOfStockAxis_37e80e84-851a-4989-b597-eb962d186438" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_32ec6253-273f-4522-8e06-b8a7f639a052" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfStockDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_37e80e84-851a-4989-b597-eb962d186438" xlink:to="loc_us-gaap_ClassOfStockDomain_32ec6253-273f-4522-8e06-b8a7f639a052" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockMember_45c4a04b-5b58-486d-b953-a46ef0d8d4ab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockDomain_32ec6253-273f-4522-8e06-b8a7f639a052" xlink:to="loc_us-gaap_ConvertiblePreferredStockMember_45c4a04b-5b58-486d-b953-a46ef0d8d4ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0814f40c-82fc-4745-9b02-4bac84194ed5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_a777e775-3422-4269-ae70-872051fbe675" xlink:href="efoi-20210331.xsd#efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock_a777e775-3422-4269-ae70-872051fbe675" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_86fffb2b-f095-4adb-9ce5-36805ade1cb2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentConvertibleConversionPrice1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_DebtInstrumentConvertibleConversionPrice1_86fffb2b-f095-4adb-9ce5-36805ade1cb2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_e9bc515f-437c-435b-bcea-0eef47e5e0c2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_e9bc515f-437c-435b-bcea-0eef47e5e0c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConversionOfStockSharesConverted1_1a82dcd9-5581-468f-b29b-d442af4ba88b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConversionOfStockSharesConverted1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_ConversionOfStockSharesConverted1_1a82dcd9-5581-468f-b29b-d442af4ba88b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_19d419fb-c131-433c-a7cb-acc98c1a7827" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_19d419fb-c131-433c-a7cb-acc98c1a7827" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_bd35f5aa-4a39-4b8c-9f54-5c1bdfbe39ef" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_bd35f5aa-4a39-4b8c-9f54-5c1bdfbe39ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_bb28bdc0-eb3f-44ff-85be-4b18661bc35b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_bb28bdc0-eb3f-44ff-85be-4b18661bc35b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PercentageOfSeriesAPreferredStockEligibleToVote_64d34926-7103-4384-8bf8-1c4631e0a060" xlink:href="efoi-20210331.xsd#efoi_PercentageOfSeriesAPreferredStockEligibleToVote"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_295cfe33-9eba-4b8b-b11a-ff18b7bc8707" xlink:to="loc_efoi_PercentageOfSeriesAPreferredStockEligibleToVote_64d34926-7103-4384-8bf8-1c4631e0a060" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityIssuanceofCommonStockandWarrantsDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteAbstract_41f4b51e-e360-4181-8237-050197a9eb11" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_497320f3-cf87-4570-9228-3799596559ab" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_41f4b51e-e360-4181-8237-050197a9eb11" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_497320f3-cf87-4570-9228-3799596559ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_d9477ee7-c037-4153-95d1-7aa3d3db7176" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_497320f3-cf87-4570-9228-3799596559ab" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_d9477ee7-c037-4153-95d1-7aa3d3db7176" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_b159ab09-5e14-4cd6-a09c-12ea4c21ebb2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_d9477ee7-c037-4153-95d1-7aa3d3db7176" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_b159ab09-5e14-4cd6-a09c-12ea4c21ebb2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_a49fae56-5325-46fa-991b-6e03c22c9c48" xlink:href="efoi-20210331.xsd#efoi_InstitutionalInvestorMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_b159ab09-5e14-4cd6-a09c-12ea4c21ebb2" xlink:to="loc_efoi_InstitutionalInvestorMember_a49fae56-5325-46fa-991b-6e03c22c9c48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrivatePlacementMember_92e7587e-c12c-4ef3-912e-3549dc284a50" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrivatePlacementMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_b159ab09-5e14-4cd6-a09c-12ea4c21ebb2" xlink:to="loc_us-gaap_PrivatePlacementMember_92e7587e-c12c-4ef3-912e-3549dc284a50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_e90a5b26-8df9-4210-b3ea-84ce0a56d12d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_497320f3-cf87-4570-9228-3799596559ab" xlink:to="loc_us-gaap_DebtInstrumentAxis_e90a5b26-8df9-4210-b3ea-84ce0a56d12d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_da7510c0-18bd-4b0e-b4c4-c11facd31376" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_e90a5b26-8df9-4210-b3ea-84ce0a56d12d" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_da7510c0-18bd-4b0e-b4c4-c11facd31376" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NotePurchaseAgreementMember_ce2c39a7-f2bc-4d76-9236-02c4a8064a5a" xlink:href="efoi-20210331.xsd#efoi_NotePurchaseAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_da7510c0-18bd-4b0e-b4c4-c11facd31376" xlink:to="loc_efoi_NotePurchaseAgreementMember_ce2c39a7-f2bc-4d76-9236-02c4a8064a5a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_497320f3-cf87-4570-9228-3799596559ab" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_043fa76b-20a8-4b86-b4a7-bb1514c47286" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction_043fa76b-20a8-4b86-b4a7-bb1514c47286" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockPricePerShare_d3a610ca-5eb4-41fa-8a92-cb0c3f635fe7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockPricePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_SaleOfStockPricePerShare_d3a610ca-5eb4-41fa-8a92-cb0c3f635fe7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_c2fff5f6-32a8-4118-b218-174a8c712da9" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_c2fff5f6-32a8-4118-b218-174a8c712da9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_31963e73-7900-4b74-8013-d63c440a0b6e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_31963e73-7900-4b74-8013-d63c440a0b6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_6d60326a-a672-4a6e-8e75-7420ab4c6138" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare_6d60326a-a672-4a6e-8e75-7420ab4c6138" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForPlacementAgentCommissions_88179963-d3f9-4337-94c7-4733c27ff561" xlink:href="efoi-20210331.xsd#efoi_PaymentsForPlacementAgentCommissions"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_PaymentsForPlacementAgentCommissions_88179963-d3f9-4337-94c7-4733c27ff561" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_3a15a3cb-5722-4aa4-ab8e-a8085a29d22c" xlink:href="efoi-20210331.xsd#efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement_3a15a3cb-5722-4aa4-ab8e-a8085a29d22c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_PaymentsForClearingFees_b04fb772-9c1e-4894-80e9-1ae8c6cce004" xlink:href="efoi-20210331.xsd#efoi_PaymentsForClearingFees"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_PaymentsForClearingFees_b04fb772-9c1e-4894-80e9-1ae8c6cce004" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfStockIssuanceCosts_eea69bb3-4ce9-42ba-bd97-7a166bccee7b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PaymentsOfStockIssuanceCosts"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_PaymentsOfStockIssuanceCosts_eea69bb3-4ce9-42ba-bd97-7a166bccee7b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_fa70d288-c9f7-4f88-8f8c-9972258ea0a1" xlink:href="efoi-20210331.xsd#efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts_fa70d288-c9f7-4f88-8f8c-9972258ea0a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_1381289c-37ca-46b1-9dbe-8e2c9a83330b" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentProceedsToBePaidToLenderPercent"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_efoi_DebtInstrumentProceedsToBePaidToLenderPercent_1381289c-37ca-46b1-9dbe-8e2c9a83330b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_8d1e2e80-fa83-4aba-a448-1b4a7e3b7541" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOrSaleOfEquity"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_ProceedsFromIssuanceOrSaleOfEquity_8d1e2e80-fa83-4aba-a448-1b4a7e3b7541" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfNotesPayable_997208ac-a2b1-4302-b4e8-8dc9690b1cce" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RepaymentsOfNotesPayable"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_RepaymentsOfNotesPayable_997208ac-a2b1-4302-b4e8-8dc9690b1cce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfWarrants_463d3d62-ee26-4e45-a9f5-939459e59bb6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfWarrants"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfWarrants_463d3d62-ee26-4e45-a9f5-939459e59bb6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_991ad385-fc48-4bf1-b06c-b95097ab1214" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised_991ad385-fc48-4bf1-b06c-b95097ab1214" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromWarrantExercises_0e137fe5-cd18-413e-995e-c0e77d1a43a5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromWarrantExercises"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_cce9c195-ccef-47f9-b788-3b3f7e80f69f" xlink:to="loc_us-gaap_ProceedsFromWarrantExercises_0e137fe5-cd18-413e-995e-c0e77d1a43a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityWarrantsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityWarrantsDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityWarrantsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteAbstract_2889db87-58c8-4d5e-920e-ae818c41fd94" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_06ee0d1d-3ac1-4863-a4f0-87ac497ebd7d" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_2889db87-58c8-4d5e-920e-ae818c41fd94" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_06ee0d1d-3ac1-4863-a4f0-87ac497ebd7d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_a9945916-e194-4c4c-bcfb-d548966849a3" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_2889db87-58c8-4d5e-920e-ae818c41fd94" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_a9945916-e194-4c4c-bcfb-d548966849a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityScheduleofWarrantsOutstandingDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteAbstract_1c9a931b-d757-4078-adb0-a8653f8e66f2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a994d0cd-a1bf-447b-b0bd-7a0143d83447" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_1c9a931b-d757-4078-adb0-a8653f8e66f2" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a994d0cd-a1bf-447b-b0bd-7a0143d83447" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsidiarySaleOfStockAxis_7fb4ec60-5bef-4b2f-8796-e655ff62c0b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsidiarySaleOfStockAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a994d0cd-a1bf-447b-b0bd-7a0143d83447" xlink:to="loc_us-gaap_SubsidiarySaleOfStockAxis_7fb4ec60-5bef-4b2f-8796-e655ff62c0b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SaleOfStockNameOfTransactionDomain_93f59490-3df6-48da-96e6-91ee10be616e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SaleOfStockNameOfTransactionDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsidiarySaleOfStockAxis_7fb4ec60-5bef-4b2f-8796-e655ff62c0b0" xlink:to="loc_us-gaap_SaleOfStockNameOfTransactionDomain_93f59490-3df6-48da-96e6-91ee10be616e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InstitutionalInvestorMember_d96f0365-92e2-4847-b2b6-709def79bfe4" xlink:href="efoi-20210331.xsd#efoi_InstitutionalInvestorMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_93f59490-3df6-48da-96e6-91ee10be616e" xlink:to="loc_efoi_InstitutionalInvestorMember_d96f0365-92e2-4847-b2b6-709def79bfe4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrivatePlacementMember_01c7d8ea-44c8-4dfb-af53-6b7cd546d252" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PrivatePlacementMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SaleOfStockNameOfTransactionDomain_93f59490-3df6-48da-96e6-91ee10be616e" xlink:to="loc_us-gaap_PrivatePlacementMember_01c7d8ea-44c8-4dfb-af53-6b7cd546d252" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_02020456-d32b-4d76-b8ed-9467ec19e14f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a994d0cd-a1bf-447b-b0bd-7a0143d83447" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_02020456-d32b-4d76-b8ed-9467ec19e14f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_5f3afaa8-1cae-46bd-8f34-0af18c9f7a50" xlink:href="efoi-20210331.xsd#efoi_ClassOfWarrantOrRightWarrantsIssued"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_02020456-d32b-4d76-b8ed-9467ec19e14f" xlink:to="loc_efoi_ClassOfWarrantOrRightWarrantsIssued_5f3afaa8-1cae-46bd-8f34-0af18c9f7a50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_c0a3ec2f-0b87-4a39-8163-dd7297814fed" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_02020456-d32b-4d76-b8ed-9467ec19e14f" xlink:to="loc_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1_c0a3ec2f-0b87-4a39-8163-dd7297814fed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityStockBasedCompensationDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteAbstract_e0bf2ab9-f1f0-4a29-a787-47600aed6ba8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_d72091cb-135e-4796-93bf-ad9dd5963622" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_e0bf2ab9-f1f0-4a29-a787-47600aed6ba8" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_d72091cb-135e-4796-93bf-ad9dd5963622" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_dd3d2044-110a-4766-88e9-bb9d7ba68f12" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_d72091cb-135e-4796-93bf-ad9dd5963622" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_dd3d2044-110a-4766-88e9-bb9d7ba68f12" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_9af93a81-7d8c-4898-9fad-fa0fb82faf4c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_dd3d2044-110a-4766-88e9-bb9d7ba68f12" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_9af93a81-7d8c-4898-9fad-fa0fb82faf4c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_2fb37b7c-9399-4051-8840-b2171527768d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CostOfSalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_9af93a81-7d8c-4898-9fad-fa0fb82faf4c" xlink:to="loc_us-gaap_CostOfSalesMember_2fb37b7c-9399-4051-8840-b2171527768d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_0e8e662a-b8c2-4d0e-a297-c3e4e984091b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_9af93a81-7d8c-4898-9fad-fa0fb82faf4c" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_0e8e662a-b8c2-4d0e-a297-c3e4e984091b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_1973f725-ac33-45a8-aa3e-dde8389e028b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_9af93a81-7d8c-4898-9fad-fa0fb82faf4c" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_1973f725-ac33-45a8-aa3e-dde8389e028b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_29274011-baad-480b-ba53-e2e0c152e08e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_d72091cb-135e-4796-93bf-ad9dd5963622" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_29274011-baad-480b-ba53-e2e0c152e08e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_735a3c63-b5b6-4cb4-8e7e-e587a22ea447" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_29274011-baad-480b-ba53-e2e0c152e08e" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_735a3c63-b5b6-4cb4-8e7e-e587a22ea447" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_1c49c04a-898b-4f40-b121-dfed993c7b42" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_29274011-baad-480b-ba53-e2e0c152e08e" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_1c49c04a-898b-4f40-b121-dfed993c7b42" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_79a2df0e-ad53-4f06-bc2a-d3231b90d17f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_29274011-baad-480b-ba53-e2e0c152e08e" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_79a2df0e-ad53-4f06-bc2a-d3231b90d17f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityEstimatesUtilizedDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_edb7e5c3-f763-4323-bca6-62271c9141aa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharePrice_ec8a6077-ca01-40ab-9f34-2f7ddd4c7c9d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharePrice"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_edb7e5c3-f763-4323-bca6-62271c9141aa" xlink:to="loc_us-gaap_SharePrice_ec8a6077-ca01-40ab-9f34-2f7ddd4c7c9d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice_698edd5b-3060-48cd-9856-7f901a11f444" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_edb7e5c3-f763-4323-bca6-62271c9141aa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice_698edd5b-3060-48cd-9856-7f901a11f444" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_8d7f4b33-33ff-43e8-921d-a08afd75369b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_edb7e5c3-f763-4323-bca6-62271c9141aa" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_8d7f4b33-33ff-43e8-921d-a08afd75369b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_1d5ee7ee-8571-4671-9c56-9abdb1ad7bdb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_edb7e5c3-f763-4323-bca6-62271c9141aa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_1d5ee7ee-8571-4671-9c56-9abdb1ad7bdb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_4fc19382-32c3-40e2-837d-13cbeba2edff" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_edb7e5c3-f763-4323-bca6-62271c9141aa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_4fc19382-32c3-40e2-837d-13cbeba2edff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_07c62cca-1cc6-4891-88c2-94070ee4e0b0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_edb7e5c3-f763-4323-bca6-62271c9141aa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_07c62cca-1cc6-4891-88c2-94070ee4e0b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityStockOptionsandaSummaryofActivityDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteAbstract_a55b78d9-9c43-4611-b1e8-1ab131391ddd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1f346027-d421-4be9-a595-003e01ca8d24" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_a55b78d9-9c43-4611-b1e8-1ab131391ddd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1f346027-d421-4be9-a595-003e01ca8d24" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_04990196-a565-4f85-ba5e-d839254b55b8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1f346027-d421-4be9-a595-003e01ca8d24" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_04990196-a565-4f85-ba5e-d839254b55b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_3173defb-298f-421d-8af3-3c9d7c6d711f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1f346027-d421-4be9-a595-003e01ca8d24" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_3173defb-298f-421d-8af3-3c9d7c6d711f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_08b24658-afda-4e27-8560-26e4f97e77ca" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1f346027-d421-4be9-a595-003e01ca8d24" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_08b24658-afda-4e27-8560-26e4f97e77ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_92d544c1-b08d-49a9-8436-7efbf5eba7f0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1f346027-d421-4be9-a595-003e01ca8d24" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod_92d544c1-b08d-49a9-8436-7efbf5eba7f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_6c0a93d5-8c90-4ea6-8337-b774f2c76a2f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_1f346027-d421-4be9-a595-003e01ca8d24" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_6c0a93d5-8c90-4ea6-8337-b774f2c76a2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_232bdb9f-4dc7-4a55-bd66-d10e25afee52" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_a55b78d9-9c43-4611-b1e8-1ab131391ddd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_232bdb9f-4dc7-4a55-bd66-d10e25afee52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_2cb32e09-687b-4a07-b05e-36bf6636f078" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_a55b78d9-9c43-4611-b1e8-1ab131391ddd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_2cb32e09-687b-4a07-b05e-36bf6636f078" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_43a024c0-cadf-47e4-9ae1-e66e146f1cb5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_a55b78d9-9c43-4611-b1e8-1ab131391ddd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_43a024c0-cadf-47e4-9ae1-e66e146f1cb5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_ccda901a-21c3-4b94-bf48-212a0350cd0c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_43a024c0-cadf-47e4-9ae1-e66e146f1cb5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_ccda901a-21c3-4b94-bf48-212a0350cd0c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_ea3e1100-6440-45f5-915a-3180ca0c2caa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_43a024c0-cadf-47e4-9ae1-e66e146f1cb5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_ea3e1100-6440-45f5-915a-3180ca0c2caa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_b3513795-eb34-4409-9777-a3100ebce839" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_43a024c0-cadf-47e4-9ae1-e66e146f1cb5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_b3513795-eb34-4409-9777-a3100ebce839" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_a37f36dd-87df-46c8-aa55-bd377d3ca7cd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_43a024c0-cadf-47e4-9ae1-e66e146f1cb5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice_a37f36dd-87df-46c8-aa55-bd377d3ca7cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_d1129834-a328-4e4b-ac51-190dac509364" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_43a024c0-cadf-47e4-9ae1-e66e146f1cb5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_d1129834-a328-4e4b-ac51-190dac509364" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_046006fa-5259-4d12-a71b-e3aa871b0cd0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_a55b78d9-9c43-4611-b1e8-1ab131391ddd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_046006fa-5259-4d12-a71b-e3aa871b0cd0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_66d07dc2-0e54-4d47-af2c-151330fe181f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_a55b78d9-9c43-4611-b1e8-1ab131391ddd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_66d07dc2-0e54-4d47-af2c-151330fe181f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_9746e2e7-2bde-4a07-8dcf-2be23f612bdd" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_a55b78d9-9c43-4611-b1e8-1ab131391ddd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_9746e2e7-2bde-4a07-8dcf-2be23f612bdd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_5966bdfb-800c-4dd1-80cc-dd45c5356c83" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_9746e2e7-2bde-4a07-8dcf-2be23f612bdd" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_5966bdfb-800c-4dd1-80cc-dd45c5356c83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_9f28905e-852c-4854-8eb5-b137e8e809e5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_a55b78d9-9c43-4611-b1e8-1ab131391ddd" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_9f28905e-852c-4854-8eb5-b137e8e809e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_521302de-7e82-405e-9c5c-9a47ce3bcfc5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_a55b78d9-9c43-4611-b1e8-1ab131391ddd" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_521302de-7e82-405e-9c5c-9a47ce3bcfc5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#StockholdersEquityRestrictedStockUnitsDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteAbstract_eeab7993-a4c6-4a03-8f75-97bb500918e2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockholdersEquityNoteAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0d06e52c-f6ff-473c-bc6e-1a0cabc8bf04" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityNoteAbstract_eeab7993-a4c6-4a03-8f75-97bb500918e2" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0d06e52c-f6ff-473c-bc6e-1a0cabc8bf04" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_df5e1b6b-6524-4c92-9eb3-e96039ce58d0" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0d06e52c-f6ff-473c-bc6e-1a0cabc8bf04" xlink:to="loc_us-gaap_AwardTypeAxis_df5e1b6b-6524-4c92-9eb3-e96039ce58d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8ebc1552-f1bd-4a40-aa36-3fef3ee9d2da" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_df5e1b6b-6524-4c92-9eb3-e96039ce58d0" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8ebc1552-f1bd-4a40-aa36-3fef3ee9d2da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_8e62a5de-8c25-4e85-b4b9-791e5a0ee3d6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_8ebc1552-f1bd-4a40-aa36-3fef3ee9d2da" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_8e62a5de-8c25-4e85-b4b9-791e5a0ee3d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_03a128b8-f82e-490b-a24c-386328cb3373" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_0d06e52c-f6ff-473c-bc6e-1a0cabc8bf04" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_03a128b8-f82e-490b-a24c-386328cb3373" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_e3da6d8e-9445-44a9-98e3-ab76a3b589b1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_03a128b8-f82e-490b-a24c-386328cb3373" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_e3da6d8e-9445-44a9-98e3-ab76a3b589b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_8b347443-1da1-4de5-80e7-26750b54bfc7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_e3da6d8e-9445-44a9-98e3-ab76a3b589b1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_8b347443-1da1-4de5-80e7-26750b54bfc7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_d0fc2a42-ae75-449f-a277-56cdf944579a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_e3da6d8e-9445-44a9-98e3-ab76a3b589b1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_d0fc2a42-ae75-449f-a277-56cdf944579a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_6e62c2c7-6b4c-4558-9390-518a22f133ca" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_e3da6d8e-9445-44a9-98e3-ab76a3b589b1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_6e62c2c7-6b4c-4558-9390-518a22f133ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_fb4ca361-6a64-42b9-8ce9-3790e862b3d5" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward_e3da6d8e-9445-44a9-98e3-ab76a3b589b1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber_fb4ca361-6a64-42b9-8ce9-3790e862b3d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_03a128b8-f82e-490b-a24c-386328cb3373" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_b38e5687-bb3f-434b-ad12-1b8630cf78e7" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_b38e5687-bb3f-434b-ad12-1b8630cf78e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_2e062e30-9e8a-466b-8ad3-5f5d7e2308b6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_2e062e30-9e8a-466b-8ad3-5f5d7e2308b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_cb266f4e-c214-4ff7-849c-d42a66831c87" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_cb266f4e-c214-4ff7-849c-d42a66831c87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_3898695d-b91e-4e72-979c-b26b04598b8c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_3898695d-b91e-4e72-979c-b26b04598b8c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_206f8941-2649-4344-8267-598c08d2c8d1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_a66562dc-7aaf-490c-a47f-cad29a26088e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_206f8941-2649-4344-8267-598c08d2c8d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_edc41354-7dfa-46ba-95cc-af6cd47c29fa" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_03a128b8-f82e-490b-a24c-386328cb3373" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_edc41354-7dfa-46ba-95cc-af6cd47c29fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_09076cc3-2e4d-4db9-aa53-fb3d56a0b694" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract_edc41354-7dfa-46ba-95cc-af6cd47c29fa" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_09076cc3-2e4d-4db9-aa53-fb3d56a0b694" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CommitmentsandContingencies" xlink:type="simple" xlink:href="efoi-20210331.xsd#CommitmentsandContingencies"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CommitmentsandContingencies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_f04a0e88-9164-40bd-8d18-55aa60286c2b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_f8e86f89-3c51-4486-9afa-8a1e4c6b96e9" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_f04a0e88-9164-40bd-8d18-55aa60286c2b" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_f8e86f89-3c51-4486-9afa-8a1e4c6b96e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#CommitmentsandContingenciesDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_10cca21e-8b38-485d-a971-79dd531787be" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentTable_130a4307-1c77-4e77-9c54-1db856670b56" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermPurchaseCommitmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_10cca21e-8b38-485d-a971-79dd531787be" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentTable_130a4307-1c77-4e77-9c54-1db856670b56" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementScenarioAxis_2426626b-4124-491f-8441-caf31182d65c" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_StatementScenarioAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentTable_130a4307-1c77-4e77-9c54-1db856670b56" xlink:to="loc_srt_StatementScenarioAxis_2426626b-4124-491f-8441-caf31182d65c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioUnspecifiedDomain_088ecb46-c6b5-414c-9b5b-60197db15ce7" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScenarioUnspecifiedDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementScenarioAxis_2426626b-4124-491f-8441-caf31182d65c" xlink:to="loc_srt_ScenarioUnspecifiedDomain_088ecb46-c6b5-414c-9b5b-60197db15ce7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScenarioForecastMember_719a7203-bf08-455d-a3b3-147901c7aedd" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_ScenarioForecastMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScenarioUnspecifiedDomain_088ecb46-c6b5-414c-9b5b-60197db15ce7" xlink:to="loc_srt_ScenarioForecastMember_719a7203-bf08-455d-a3b3-147901c7aedd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentLineItems_d3629c23-02f4-4889-af6b-72f2802988fb" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermPurchaseCommitmentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentTable_130a4307-1c77-4e77-9c54-1db856670b56" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentLineItems_d3629c23-02f4-4889-af6b-72f2802988fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PurchaseObligation_231e5f88-3ea2-4299-b727-6dc02c2c9a76" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PurchaseObligation"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentLineItems_d3629c23-02f4-4889-af6b-72f2802988fb" xlink:to="loc_us-gaap_PurchaseObligation_231e5f88-3ea2-4299-b727-6dc02c2c9a76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermPurchaseCommitmentAmount_de5a35ff-5aeb-4210-9eab-825a272d43f2" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongTermPurchaseCommitmentAmount"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongTermPurchaseCommitmentLineItems_d3629c23-02f4-4889-af6b-72f2802988fb" xlink:to="loc_us-gaap_LongTermPurchaseCommitmentAmount_de5a35ff-5aeb-4210-9eab-825a272d43f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/SubsequentEvents" xlink:type="simple" xlink:href="efoi-20210331.xsd#SubsequentEvents"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/SubsequentEvents" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract_68ec8235-cb37-41f0-b848-ed3154f8b63d" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsTextBlock_994a6f54-a33c-4ec2-90f8-4661ab80de55" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_68ec8235-cb37-41f0-b848-ed3154f8b63d" xlink:to="loc_us-gaap_SubsequentEventsTextBlock_994a6f54-a33c-4ec2-90f8-4661ab80de55" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.energyfocusinc.com/role/SubsequentEventsDetails" xlink:type="simple" xlink:href="efoi-20210331.xsd#SubsequentEventsDetails"/>
  <link:presentationLink xlink:role="http://www.energyfocusinc.com/role/SubsequentEventsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract_323880d6-4ad7-43b5-9340-8900c988797c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_323880d6-4ad7-43b5-9340-8900c988797c" xlink:to="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_c2773597-312f-430e-be62-76098de4991e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_c2773597-312f-430e-be62-76098de4991e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_e7f9be2c-0d65-4915-99fa-5ff6d152aec8" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_c2773597-312f-430e-be62-76098de4991e" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_e7f9be2c-0d65-4915-99fa-5ff6d152aec8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_2c4f04f7-7fd0-4538-b693-1f6beff76d61" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_e7f9be2c-0d65-4915-99fa-5ff6d152aec8" xlink:to="loc_us-gaap_SubsequentEventMember_2c4f04f7-7fd0-4538-b693-1f6beff76d61" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_3b99bc63-d547-42ef-998a-368e5d207a06" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_DebtInstrumentAxis_3b99bc63-d547-42ef-998a-368e5d207a06" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_212d54af-3546-438e-a344-a9ef3bf35af1" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_3b99bc63-d547-42ef-998a-368e5d207a06" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_212d54af-3546-438e-a344-a9ef3bf35af1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_StreetervilleNotePurchaseAgreementMember_964e8c58-4bad-4afc-bdb8-4709ea162092" xlink:href="efoi-20210331.xsd#efoi_StreetervilleNotePurchaseAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_212d54af-3546-438e-a344-a9ef3bf35af1" xlink:to="loc_efoi_StreetervilleNotePurchaseAgreementMember_964e8c58-4bad-4afc-bdb8-4709ea162092" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_InventoryFacilityMember_719afdb4-5f58-4da2-bfdb-26413867e6ad" xlink:href="efoi-20210331.xsd#efoi_InventoryFacilityMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_212d54af-3546-438e-a344-a9ef3bf35af1" xlink:to="loc_efoi_InventoryFacilityMember_719afdb4-5f58-4da2-bfdb-26413867e6ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_76ea36ed-6266-4cd9-9d1d-b21a3691d48f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_CreditFacilityAxis_76ea36ed-6266-4cd9-9d1d-b21a3691d48f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_e41aa879-a470-4d3b-b70d-61e60aa96c3f" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_76ea36ed-6266-4cd9-9d1d-b21a3691d48f" xlink:to="loc_us-gaap_CreditFacilityDomain_e41aa879-a470-4d3b-b70d-61e60aa96c3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_c77e9229-c8e8-4ba7-8e1c-05701a38a600" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_e41aa879-a470-4d3b-b70d-61e60aa96c3f" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_c77e9229-c8e8-4ba7-8e1c-05701a38a600" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_fdef2de0-df0b-42fb-8c7f-e91247c1373b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_fdef2de0-df0b-42fb-8c7f-e91247c1373b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_913e8319-c6e0-418e-955e-8d917f758345" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodAxis_fdef2de0-df0b-42fb-8c7f-e91247c1373b" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_913e8319-c6e0-418e-955e-8d917f758345" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodOneMember_31cd2273-2ebd-451b-9c94-0447d89ea329" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodOneMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_913e8319-c6e0-418e-955e-8d917f758345" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodOneMember_31cd2273-2ebd-451b-9c94-0447d89ea329" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentRedemptionPeriodTwoMember_756bfc8d-97af-4883-bf8a-71ae249c060c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentRedemptionPeriodTwoMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentRedemptionPeriodDomain_913e8319-c6e0-418e-955e-8d917f758345" xlink:to="loc_us-gaap_DebtInstrumentRedemptionPeriodTwoMember_756bfc8d-97af-4883-bf8a-71ae249c060c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_c2bb758d-dc25-467b-b4fd-d9ad4e001310" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_c2bb758d-dc25-467b-b4fd-d9ad4e001310" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_30a67935-d6af-47ad-8f91-5a944e51f3cf" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_c2bb758d-dc25-467b-b4fd-d9ad4e001310" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_30a67935-d6af-47ad-8f91-5a944e51f3cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertibleDebtMember_3fd588f7-03e2-46da-a765-ddcc8191c19e" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertibleDebtMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_30a67935-d6af-47ad-8f91-5a944e51f3cf" xlink:to="loc_us-gaap_ConvertibleDebtMember_3fd588f7-03e2-46da-a765-ddcc8191c19e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_92a9f956-b619-4f2b-b1cb-78ede46d0fb4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_92a9f956-b619-4f2b-b1cb-78ede46d0fb4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_7ebbc87a-8489-441c-beab-3f091573ee45" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_92a9f956-b619-4f2b-b1cb-78ede46d0fb4" xlink:to="loc_us-gaap_EquityComponentDomain_7ebbc87a-8489-441c-beab-3f091573ee45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockMember_0bdcea1a-81a8-4559-a871-951c5fbdbe7a" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_PreferredStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_7ebbc87a-8489-441c-beab-3f091573ee45" xlink:to="loc_us-gaap_PreferredStockMember_0bdcea1a-81a8-4559-a871-951c5fbdbe7a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_62c8770c-e298-41ab-8bc8-d6f06b7c2422" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_7ebbc87a-8489-441c-beab-3f091573ee45" xlink:to="loc_us-gaap_CommonStockMember_62c8770c-e298-41ab-8bc8-d6f06b7c2422" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CounterpartyNameAxis_347af747-3da0-4857-b107-f29b9d856b2f" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_CounterpartyNameAxis"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_srt_CounterpartyNameAxis_347af747-3da0-4857-b107-f29b9d856b2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RepurchaseAgreementCounterpartyNameDomain_c972da92-f41b-4f0f-8fbc-f6af3cc604a4" xlink:href="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd#srt_RepurchaseAgreementCounterpartyNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CounterpartyNameAxis_347af747-3da0-4857-b107-f29b9d856b2f" xlink:to="loc_srt_RepurchaseAgreementCounterpartyNameDomain_c972da92-f41b-4f0f-8fbc-f6af3cc604a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_FusionParkMember_56fb4fa1-d4e3-49e2-8fa2-87788b22ba75" xlink:href="efoi-20210331.xsd#efoi_FusionParkMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RepurchaseAgreementCounterpartyNameDomain_c972da92-f41b-4f0f-8fbc-f6af3cc604a4" xlink:to="loc_efoi_FusionParkMember_56fb4fa1-d4e3-49e2-8fa2-87788b22ba75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_BrilliantStartMember_278c8f42-aa8f-4708-8f60-d2aeb9ce3c46" xlink:href="efoi-20210331.xsd#efoi_BrilliantStartMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RepurchaseAgreementCounterpartyNameDomain_c972da92-f41b-4f0f-8fbc-f6af3cc604a4" xlink:to="loc_efoi_BrilliantStartMember_278c8f42-aa8f-4708-8f60-d2aeb9ce3c46" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_122efda0-f1d7-439d-a9de-a443add2c019" xlink:to="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_9f0df5dc-b77d-44f9-aea1-c645e8f23f2c" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_9f0df5dc-b77d-44f9-aea1-c645e8f23f2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscount_f03f774d-a1fa-4cfa-ab85-086c0775e6ae" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentUnamortizedDiscount"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscount_f03f774d-a1fa-4cfa-ab85-086c0775e6ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfDebt_21857dc2-37b0-438e-8e0c-25018fb946f4" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ProceedsFromIssuanceOfDebt"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfDebt_21857dc2-37b0-438e-8e0c-25018fb946f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredFinanceCostsGross_cc9c8a82-3225-4941-86bc-ba25dbf1a4c6" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DeferredFinanceCostsGross"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_DeferredFinanceCostsGross_cc9c8a82-3225-4941-86bc-ba25dbf1a4c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_37e0f632-0193-4ca5-826d-d433d80fa202" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_37e0f632-0193-4ca5-826d-d433d80fa202" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentPrepaymentPremiumPercent_1ee44905-ac0f-4bdd-9885-47d28265acee" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentPrepaymentPremiumPercent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_DebtInstrumentPrepaymentPremiumPercent_1ee44905-ac0f-4bdd-9885-47d28265acee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtPrepaymentMaximumPercentage_3507deca-0256-4efe-87c1-8cbbfc4ba6b6" xlink:href="efoi-20210331.xsd#efoi_DebtPrepaymentMaximumPercentage"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_DebtPrepaymentMaximumPercentage_3507deca-0256-4efe-87c1-8cbbfc4ba6b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption_9def9897-4b71-48cd-a7f7-d2347bdd1cca" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption_9def9897-4b71-48cd-a7f7-d2347bdd1cca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_481674f2-8aaa-43b0-865e-bb3cb9b7fbaa" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount_481674f2-8aaa-43b0-865e-bb3cb9b7fbaa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals_6cf4790b-a530-4305-986a-776c05fb5440" xlink:href="efoi-20210331.xsd#efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals_6cf4790b-a530-4305-986a-776c05fb5440" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption_8918bc52-0940-4e8f-a0ce-2093bafa45f4" xlink:href="efoi-20210331.xsd#efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption_8918bc52-0940-4e8f-a0ce-2093bafa45f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_17fb25d0-7380-4998-b0e4-ba088876b2fc" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_17fb25d0-7380-4998-b0e4-ba088876b2fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_0fa45be4-ef89-4495-9da2-5df2536cbce9" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent_0fa45be4-ef89-4495-9da2-5df2536cbce9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_848e411c-d2dc-47f7-8389-991faf695a52" xlink:href="efoi-20210331.xsd#efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent_848e411c-d2dc-47f7-8389-991faf695a52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConversionOfStockSharesConverted1_222acbb0-8aad-4b0b-ad11-843258b85d73" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConversionOfStockSharesConverted1"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_ConversionOfStockSharesConverted1_222acbb0-8aad-4b0b-ad11-843258b85d73" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_ae4169b0-2ec2-4aca-ab5f-499d55ecac18" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion_ae4169b0-2ec2-4aca-ab5f-499d55ecac18" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_6a9a6b71-5c70-4cd2-984e-b737b7a0e065" xlink:href="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesNewIssues"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_4fb19187-f092-4b4a-83a4-593710093a0b" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesNewIssues_6a9a6b71-5c70-4cd2-984e-b737b7a0e065" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<FILENAME>efoi-20210331_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2020-01-31"
  xmlns:efoi="http://www.energyfocusinc.com/20210331"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2020-01-31"
  xmlns:us-gaap="http://fasb.org/us-gaap/2020-01-31"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="efoi-20210331.xsd" xlink:type="simple"/>
    <context id="i612079b69ed741e48b442b22207bd746_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="ied75b1bf063b409c8c62ca90898cf369_I20210510">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2021-05-10</instant>
        </period>
    </context>
    <context id="ia2ed7d6c1695406e89547655ae276683_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="iae645623f77e42e5b5e147a4d7803174_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i8bba8aca45b447dca8a0fe6aadddcdd7_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i25cc70700a1249cc860b650b1569c291_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="iefa2f8c5d2494f84a4889f4269ec295c_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ib0c30d855fb94190b54430d1d98b67d2_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ifb09e59072d14268b8167df84d28bcbb_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ic25ef8ed452643c192dc1b856cce88ce_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i935f80c4157c4844940f1b9e9b3bbc9b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i8311295ceced4887b52bb77f08688ba2_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i9ef8836cce7e40659ce9d5656d0e1dc3_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i914b601634db4c02a91ffcca4c1681dd_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="ic30667e4d1c14c38b17e5e0c135745cc_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="ic6127dfec7cc4a26a5679368ae0f6331_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i1feef45a88014e6f88c7c491aef496dd_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="id717036fa6a84777abf568d01d8c77d7_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i65811a43f59446e092002acba8e94052_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i79484b12568d4589885611a2120d0f97_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="if08ae7d128714b3e92be1b377916eb91_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="id5f8d6f4d1b44677bcc8adf664cf853c_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i6a96f27ca97a4544a2d8a3dc39035908_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ic3460a1e7c5f44a09209f32a5366d644_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="ia14618e080534548a2781f9ad7ec8f84_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i81985727a69745758bddf991481d0505_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i67803bc7a01c456e80a6846be17ef60d_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="ied33f6c53d764225aa6f8c145679b518_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i9455098d06554ec0adf612293c2144a1_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i0a8148c40d814bfd89d54a226595752e_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i4214f4a61aea40e8bef111db565b878e_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i7aebac5aec544ae3b2afb6da8016cdc9_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i1c85bdd333f64a73bad6e2d47e396c8d_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i26e85c903f5047c7b6a506e3150f982a_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i8b380c143505472ea52a1d6c64de8ec9_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i966f4d480fe049d7b6c17f4a72dc83da_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i63ccc98555614cfab54ffbdf8ae024fc_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i2445ac12b79b4fe9ae5212c144262d44_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="iff3ff954adda4095a804e4cfb5194d74_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i1249020da8174efcb6c1b1321d81b702_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NewCreditFacilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="ia4a74a32957d4c4a85349e233b9e36d9_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NewCreditFacilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i66985daeedc64cd7ab86f489ac45819c_I20200611">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2020-06-11</instant>
        </period>
    </context>
    <context id="ib511811b464246dcb6dacfa99b4e73e8_D20200611-20200611">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2020-06-11</startDate>
            <endDate>2020-06-11</endDate>
        </period>
    </context>
    <context id="i4ac3ca3389b54e11881bc600bc76e5c1_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="if5f69b88c1e94812b8d32051e6bf5bad_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheU.S.NavyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i8fd89665f12e4c79be1f16a4975db0e9_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:RegionalCommercialLightingRetrofitCompanyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i016aca80ed34490fb5902c84d4cdb20c_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="ide94a6dc06b94121b00d007ae8029a9c_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheU.S.NavyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i98413ba4172f400fb13a4e55b3dd9ece_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:RegionalCommercialLightingRetrofitCompanyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="ic0084796b5f94e29804958a4753bf87d_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i9b8c850c315e4629b561719f49269baa_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheU.S.NavyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i404f93dec6d14c99986fb1a63ef2adaf_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:RegionalCommercialLightingRetrofitCompanyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i027584a13e074a8b955c05d56697a12d_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:DistributorToTheU.S.NavyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i24390d1b839c498da16d408831cd0cdb_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">efoi:ShipbuilderForUSNavyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i31b6c2c6322246a4beda0a0731370684_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i339a38526a964beca9f1eb7f0d7d7f75_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i141e4c5e274f4baa94b6e62a525c3b7c_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsPayableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i8d004affba704c7ca37fa06e3ba8892f_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsPayableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:DomesticSupplierMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="ie020b072c1514c4ea7ff082dae9ba76f_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsPayableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:SupplierConcentrationRiskMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis">efoi:OffshoreSupplierMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i18a690ed9a9a41458d0feffe21f8dcca_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:CommercialProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="ic4682245caf84f909e5aa693dcb86844_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:CommercialProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i9610cf42043f41e5b8ebba87cec3b68e_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:MMMProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="iea035adca85b40d38d1857cd4a7d3ddd_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:MMMProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i01bd9c8c1eaf40bc95a4831475c6065c_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="if4463cd7b06c441198a42045a52ce68c_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i23f283c771fb442cbcbc4e3518a209e7_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i07e159ff53c64c0c9211a8bafd5d974c_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="id654613ac3e14a678d4ce7ce503bdd1c_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i26a92c18c3f5476183cd1d14b1c8017b_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i8dce9257f3f24cc597b70575ad006ab1_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i156a82c4ce954d63bb4ce38aba1d7b32_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i2033bf56898b45b0a71f426377e0e078_D20160101-20160331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2016-01-01</startDate>
            <endDate>2016-03-31</endDate>
        </period>
    </context>
    <context id="i254d386828124dd682d8335070f16083_D20160101-20160331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2016-01-01</startDate>
            <endDate>2016-03-31</endDate>
        </period>
    </context>
    <context id="ia0662236cd9941438e3fb2c0b78a0713_D20160401-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2016-04-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i51e6dde065b142a79d23bc3955353ce9_D20160401-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:OtherLEDProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2016-04-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="icd6f5ef38d7b497a9145ce075a0725c3_D20191001-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:LEDFLTubularLEDLampsExcludingRedCapsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i8e50ea1232c74a3a8dc19a60549d605f_D20191001-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:DSeriesLampsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i1295814c41ea47abb4b46801e022a13b_D20191001-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:DSeriesLampsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i23ab18c4dc8e48cf805f19a0b7845a7e_D20191001-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">efoi:OtherLEDProductsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:InstitutionalInvestorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-01-31</endDate>
        </period>
    </context>
    <context id="i80309835f493449a847d541559d6ff1d_I20200131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:InstitutionalInvestorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-01-31</endDate>
        </period>
    </context>
    <context id="ib438250335dd4372a2373f976a591fda_D20200101-20200131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-01-31</endDate>
        </period>
    </context>
    <context id="i00eb0670d1e149a2a10c5ce329bb1fa2_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i3474f10caa984249abced513511bd9c0_I20200131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="i5b14b389eebc47d5bcc51f2dd4812ce8_D20200101-20200131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NotePurchaseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-01-31</endDate>
        </period>
    </context>
    <context id="i4de7feba86f4411e8431d327acf726a6_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i204bf87cc54142adb41b78ecb6f6c2ff_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i26193b3fb7204cbba2c9cccc40d0a8bd_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="iab487819a6de4c7eab2a54b9565d76f1_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i84aed75aecf64140a55d8201e6975d87_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="ic8d742260c744f68b31555bc2ef0ee31_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i32a94f674f9c4282bda3725ed1efa2c3_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:WarrantMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i14709b4c82a0489196f048d100db74eb_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">efoi:A2017RestructuringPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="iedd1f016b9da46ea84aceb964ba2d25d_I20191231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">efoi:A2017RestructuringPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="i27e7396aac0e4b97b740d544c79f4b1b_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">efoi:A2017RestructuringPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="ica32c0b758bf4b018d2e8647394b7df2_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">efoi:A2017RestructuringPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i64ee7f906d4b4626994aae8553910939_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">efoi:A2017RestructuringPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="ibf094f935bc54a188e70ed93967f05b2_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringCostAndReserveAxis">us-gaap:FacilityClosingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RestructuringPlanAxis">efoi:A2017RestructuringPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i9c3de87bc8c44c3da15548537e3ffc68_I20200630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2020-06-30</instant>
        </period>
    </context>
    <context id="i6d49f812163f4d3d85774dca03acfc52_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i88122b3825db421e9e332c8822107e7e_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i7be828f171874cdba42b9f4de1d4b61a_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i5bbc9f91e427445cbc2f4a548bc0471a_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i8cc262b55c044c01b5b660dcc05b6cc7_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:ToolingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="ie786e94dc15f47d1a47500ff99d55d06_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:ToolingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i74891aff588748ea823cc93f34624d19_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:ToolingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i311e719c864f4fefa008ef89eb519e26_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:ToolingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i9898ed25029e4253af5809004bb34303_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i4977389893ac44e393b1813f5f0d864e_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="ie8ad94c0c98d44158c649f4918166bd3_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i6f748e5851a34d9f96a88b9f90daefbc_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="id61537b927a64c8e9bf6ef3bbdb02b02_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="ia383ca85d770415d9f2286930cd26494_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i8d4ec91ede574a03a42c7a5660e5b306_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i0b2c25b550af4aa58cb88a8a68b53a2d_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i002e091ac95b419093f8a3ed4f1251ff_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i410f5b8952f743bc8f88687a4f16c3f3_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="ib0161b0e3e184209b353725f323913c5_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ia0e5f09ba4894d82b81dee38c0c97b19_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:FinanceLeaseRightOfUseAssetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i56aa58345d2e46e3bb52b44cd3fa1525_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">efoi:FinanceLeaseRightOfUseAssetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i421ce1d0676647019fe74bdb4cb14a23_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i0553e71729f146bfa2eb8010210837d3_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ConstructionInProgressMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i01c4d52bc6c44c60ae149c09a5bffa8c_I20210121">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2021-01-21</instant>
        </period>
    </context>
    <context id="i95512250be8748d786dbf0e2762ce66f_I20200811">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2020-08-11</instant>
        </period>
    </context>
    <context id="i2e571f4b493a41619ace396495da7565_I20200811">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:InventoryFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-08-11</instant>
        </period>
    </context>
    <context id="i7b82fe3611ec4325a53fba6ad96f5792_I20210420">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:InventoryFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-04-20</instant>
        </period>
    </context>
    <context id="i31365bd27b594b55bedee87e4420d604_I20200811">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:InventoryFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:LondonInterbankOfferedRateLIBORMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-08-11</instant>
        </period>
    </context>
    <context id="if63cde55efd8429db7da4e3f0431b066_D20200811-20200811">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:InventoryFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-11</startDate>
            <endDate>2020-08-11</endDate>
        </period>
    </context>
    <context id="i07083608ea224ea6b028b460c546b025_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:InventoryFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="ia1b70191d97f4ddeb5890c1cc8664025_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:InventoryFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="if324298a2a9a437189fe449d8254b842_I20200811">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-08-11</instant>
        </period>
    </context>
    <context id="i072f5a4e47054886801ffd3c4729ed59_I20200811">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-08-11</instant>
        </period>
    </context>
    <context id="i666c20d9cab542bda9f87104f59ce94a_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i536d2633727441b68c90b3d2772253ad_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i977b6602441d4c5895543f2422ae1a6b_D20200811-20200811">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:ReceivablesFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-11</startDate>
            <endDate>2020-08-11</endDate>
        </period>
    </context>
    <context id="i9c2fbcb4bfb34d568bc852c17bd445d1_D20181211-20181211">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-11</startDate>
            <endDate>2018-12-11</endDate>
        </period>
    </context>
    <context id="ib4ec9ce606ec4a87aed99ad8f20235e6_I20181211">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-11</instant>
        </period>
    </context>
    <context id="i2830bb7eb7414664948bc6fcb518c1fb_D20181211-20181211">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-11</startDate>
            <endDate>2018-12-11</endDate>
        </period>
    </context>
    <context id="i41ebe710d00c457298fbe55e2f33697c_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i953386c333504f1cba95b8d43eb5009b_D20200811-20200811">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-08-11</startDate>
            <endDate>2020-08-11</endDate>
        </period>
    </context>
    <context id="id888f8edb49e460fbb943b31d7eb5988_I20200811">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:AustinFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-08-11</instant>
        </period>
    </context>
    <context id="i60bf27a363d84282adb85969c19c38da_D20190329-20190329">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-03-29</startDate>
            <endDate>2019-03-29</endDate>
        </period>
    </context>
    <context id="i1fe3b1abd2b845b58083a94e518739db_D20190329-20190630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-03-29</startDate>
            <endDate>2019-06-30</endDate>
        </period>
    </context>
    <context id="i1f963ba5a5e2497b89de65c65bf1005d_D20190701-20200116">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-07-01</startDate>
            <endDate>2020-01-16</endDate>
        </period>
    </context>
    <context id="i77ebeec1a11147f4bddd50d2befab70b_I20200116">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-16</instant>
        </period>
    </context>
    <context id="ib1abd927789c4c3db262bebaaf83998e_D20200116-20200116">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-16</startDate>
            <endDate>2020-01-16</endDate>
        </period>
    </context>
    <context id="ic3472714a7ee4d70a2b3939e8552b242_D20200101-20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="i992eeeca44564c2e8de058eec5fd99d2_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i00ea0eba4f7d4d4f97ed3eac19a2d4a6_D20210401-20210401">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:PreferredStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-01</startDate>
            <endDate>2021-04-01</endDate>
        </period>
    </context>
    <context id="i680c85489eaa462b88497e2441ad4b39_I20210401">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-04-01</instant>
        </period>
    </context>
    <context id="i60c86ac561af49569ab990cbc12cc983_I20191125">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NotePurchaseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-11-25</instant>
        </period>
    </context>
    <context id="i2ccc45ecf1bd477f92e514d8e5da122c_D20191125-20191125">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NotePurchaseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-11-25</startDate>
            <endDate>2019-11-25</endDate>
        </period>
    </context>
    <context id="i64e293c75b2142608d8349f94ac4c621_D20201201-20201201">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NotePurchaseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-12-01</startDate>
            <endDate>2020-12-01</endDate>
        </period>
    </context>
    <context id="if2f8ae782a86447ea1cd2368f97fa536_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:NotePurchaseAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="i61a322798f454174b23bfa9b494c02fd_I20210427">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:StreetervilleNotePurchaseAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-04-27</instant>
        </period>
    </context>
    <context id="i50ba0c2a78a741cbbd1175c3c8e51ca4_D20210427-20210427">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:StreetervilleNotePurchaseAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-27</startDate>
            <endDate>2021-04-27</endDate>
        </period>
    </context>
    <context id="idf0470d514ad4ac296bafa544697e13e_D20200417-20200417">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:PaycheckProtectionProgramCARESActMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-04-17</startDate>
            <endDate>2020-04-17</endDate>
        </period>
    </context>
    <context id="i8e1357078d1b44c5a35a856fb2002e10_I20200417">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:PaycheckProtectionProgramCARESActMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-04-17</instant>
        </period>
    </context>
    <context id="i2a141a80b8fe446780e60683d3a297dc_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i69bb06e237ad42a589c2f56452f3777b_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="i3b3aa389d6fc49bfa1333e99d3b82b88_I20171231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2017-12-31</instant>
        </period>
    </context>
    <context id="i5017ffc2879e4fab9f6a78f3dd698432_I20190329">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2019-03-29</instant>
        </period>
    </context>
    <context id="i09ca929212e44528ab26cccc51ad1c99_I20190329">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-03-29</instant>
        </period>
    </context>
    <context id="i25e4e149c9e645cea2591a854500fb8b_I20200115">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <instant>2020-01-15</instant>
        </period>
    </context>
    <context id="iea1223b775ca41c6a6e0e6f61ac4d3d0_I20200115">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:ConvertiblePreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-01-15</instant>
        </period>
    </context>
    <context id="i19e09cdb27e34ffdaa5038b9f496b299_D20200116-20200116">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
        </entity>
        <period>
            <startDate>2020-01-16</startDate>
            <endDate>2020-01-16</endDate>
        </period>
    </context>
    <context id="i688eff7e70ff4f109664ebab2f07dd0f_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:InstitutionalInvestorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="ie0fd88a0abe14e9e86e69687ad7c12e6_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:InstitutionalInvestorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="ic8a5b48784f3454d8b3798eb20083704_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i7b7525b9862f4b568f1afcd51170c828_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="ibc574a748cfb4936926327dcb115d007_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:InstitutionalInvestorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i102df05d8b4d484d854f73dd0afb12a3_I20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">efoi:InstitutionalInvestorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-03-31</instant>
        </period>
    </context>
    <context id="id5e82a695c8944f290e51261e35ca1b3_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsidiarySaleOfStockAxis">us-gaap:PrivatePlacementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i52ef57e0d6f649c294e6b21e7d493741_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i1274ca278bbb445b90395605a8206ee5_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i02d886360698450a823175c9c4a4352e_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i185da9ffb81e4ff4b93e3ad77b4c1018_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i0d1cfbd6b81949b6b7b0d2dfe9c96663_D20210101-20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="i4f887d6f2b3e447a9e37eacf99f2e6ac_D20200101-20200331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="i7ce97b0111a9407fb3e025133e40dd13_I20201231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="ifc53b698d0bb42419b6699f219dbaa83_I20210331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-03-31</instant>
        </period>
    </context>
    <context id="i35678c0361cb4b5c9871138c4ded16f7_D20210401-20210630">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">srt:ScenarioForecastMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="i17a762aaa3344791adeeb85e487fb039_D20210427-20210427">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:StreetervilleNotePurchaseAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-27</startDate>
            <endDate>2021-04-27</endDate>
        </period>
    </context>
    <context id="i2f7c05c5c42d4a7a95b92e6d57c7db6f_D20210427-20210427">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">efoi:StreetervilleNotePurchaseAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentRedemptionPeriodAxis">us-gaap:DebtInstrumentRedemptionPeriodTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-27</startDate>
            <endDate>2021-04-27</endDate>
        </period>
    </context>
    <context id="iff32125b13c7454683df0d63faf61ae3_D20210401-20210401">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">efoi:FusionParkMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-01</startDate>
            <endDate>2021-04-01</endDate>
        </period>
    </context>
    <context id="i582bd18c1c3c482099ca1731004fb30f_D20210401-20210401">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000924168</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CounterpartyNameAxis">efoi:BrilliantStartMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-04-01</startDate>
            <endDate>2021-04-01</endDate>
        </period>
    </context>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="usdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <unit id="creditfacility">
        <measure>efoi:creditFacility</measure>
    </unit>
    <unit id="deferral">
        <measure>efoi:deferral</measure>
    </unit>
    <dei:EntityCentralIndexKey
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80L2ZyYWc6NzY0ZjgzMmIzMDNkNDk3M2FkZmU4ZWEzMTRiY2Q2MjEvdGFibGU6NGY2ZmMxMzQ4NWVhNDI3ZGE4YjcwMTJjMDA5YmU5MTUvdGFibGVyYW5nZTo0ZjZmYzEzNDg1ZWE0MjdkYThiNzAxMmMwMDliZTkxNV80LTEtMS0xLTA_8c758c00-08eb-443a-a7cc-2d74434aa8c3">0000924168</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80L2ZyYWc6NzY0ZjgzMmIzMDNkNDk3M2FkZmU4ZWEzMTRiY2Q2MjEvdGFibGU6NGY2ZmMxMzQ4NWVhNDI3ZGE4YjcwMTJjMDA5YmU5MTUvdGFibGVyYW5nZTo0ZjZmYzEzNDg1ZWE0MjdkYThiNzAxMmMwMDliZTkxNV81LTEtMS0xLTA_83b00b57-eeb3-4cb7-8050-c077909b0470">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80L2ZyYWc6NzY0ZjgzMmIzMDNkNDk3M2FkZmU4ZWEzMTRiY2Q2MjEvdGFibGU6NGY2ZmMxMzQ4NWVhNDI3ZGE4YjcwMTJjMDA5YmU5MTUvdGFibGVyYW5nZTo0ZjZmYzEzNDg1ZWE0MjdkYThiNzAxMmMwMDliZTkxNV8xMy0xLTEtMS0w_457d5f4c-8e8c-40a9-a0b6-3fa7398205ad">2021</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80L2ZyYWc6NzY0ZjgzMmIzMDNkNDk3M2FkZmU4ZWEzMTRiY2Q2MjEvdGFibGU6NGY2ZmMxMzQ4NWVhNDI3ZGE4YjcwMTJjMDA5YmU5MTUvdGFibGVyYW5nZTo0ZjZmYzEzNDg1ZWE0MjdkYThiNzAxMmMwMDliZTkxNV8xNC0xLTEtMS0w_5e7b8837-38f1-4bf0-a56a-fe4778f8ed40">Q1</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80L2ZyYWc6NzY0ZjgzMmIzMDNkNDk3M2FkZmU4ZWEzMTRiY2Q2MjEvdGFibGU6NGY2ZmMxMzQ4NWVhNDI3ZGE4YjcwMTJjMDA5YmU5MTUvdGFibGVyYW5nZTo0ZjZmYzEzNDg1ZWE0MjdkYThiNzAxMmMwMDliZTkxNV8xNS0xLTEtMS0w_950d1bc1-c266-4e53-bcf4-27b43787be43">false</dei:AmendmentFlag>
    <dei:EntityRegistrantName
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80L2ZyYWc6NzY0ZjgzMmIzMDNkNDk3M2FkZmU4ZWEzMTRiY2Q2MjEvdGV4dHJlZ2lvbjo3NjRmODMyYjMwM2Q0OTczYWRmZThlYTMxNGJjZDYyMV8zMg_48424470-882d-4cf1-9767-6494cadef2d6">ENERGY FOCUS, INC/DE</dei:EntityRegistrantName>
    <us-gaap:StockholdersEquityNoteStockSplitConversionRatio1
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yMi9mcmFnOmRlYWVhNmQ2M2YxZjQ4MGY5NTAwNjAwMjEwYzgyOWM3L3RleHRyZWdpb246ZGVhZWE2ZDYzZjFmNDgwZjk1MDA2MDAyMTBjODI5YzdfMTQ_251d2f38-86ac-4a81-bda1-79be2ce9477d"
      unitRef="number">0.2</us-gaap:StockholdersEquityNoteStockSplitConversionRatio1>
    <us-gaap:StockholdersEquityNoteStockSplitConversionRatio1
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zMS9mcmFnOjIzYzFhNWViMDUzNzRiMDliNTgyYmFkMTM4YzhiM2VhL3RleHRyZWdpb246MjNjMWE1ZWIwNTM3NGIwOWI1ODJiYWQxMzhjOGIzZWFfMTQ_0ef3f280-0e6c-4885-99f6-0c40db948df0"
      unitRef="number">0.2</us-gaap:StockholdersEquityNoteStockSplitConversionRatio1>
    <us-gaap:StockholdersEquityNoteStockSplitConversionRatio1
      contextRef="ib511811b464246dcb6dacfa99b4e73e8_D20200611-20200611"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80My9mcmFnOjFiNzJkYjg0NDRlZDRkYTI5NDY2NDE3MDcxNGY2MDc0L3RleHRyZWdpb246MWI3MmRiODQ0NGVkNGRhMjk0NjY0MTcwNzE0ZjYwNzRfMTk2_085d5ef0-6898-414c-b825-41770c27ef9a"
      unitRef="number">0.2</us-gaap:StockholdersEquityNoteStockSplitConversionRatio1>
    <efoi:StandardProductWarrantyNumberofYears
      contextRef="i2033bf56898b45b0a71f426377e0e078_D20160101-20160331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDA0OQ_e66bff4c-194e-44bc-a3ef-eb779268857d">P1Y</efoi:StandardProductWarrantyNumberofYears>
    <us-gaap:StockholdersEquityNoteStockSplitConversionRatio1
      contextRef="ib511811b464246dcb6dacfa99b4e73e8_D20200611-20200611"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83My9mcmFnOmJiYmI1NTYyNTllNjQ4MjU4NGMxN2Y4MjUyZGY4OGQxL3RleHRyZWdpb246YmJiYjU1NjI1OWU2NDgyNTg0YzE3ZjgyNTJkZjg4ZDFfMTAy_d79cfc09-01f4-40e3-b739-5d3328ce7e51"
      unitRef="number">0.2</us-gaap:StockholdersEquityNoteStockSplitConversionRatio1>
    <dei:DocumentType
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xODU0_ba24e074-d2fa-4134-bd13-499aa67bc4cd">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6MTdjMDE3MDdkYzNhNDcwMjhjNTk4NzJkMTBhZWU2NjYvdGFibGVyYW5nZToxN2MwMTcwN2RjM2E0NzAyOGM1OTg3MmQxMGFlZTY2Nl8wLTAtMS0xLTA_8f9345d5-2f9b-4b5a-ae70-3b30f4b50bcd">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xMjU_65b529c2-44de-4078-9aa8-03bbf9e0ff57">2021-03-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6NWM4ZWU0YzdmZDc5NDRkZTlmNzVmZmY0ZDJjZTFmZjcvdGFibGVyYW5nZTo1YzhlZTRjN2ZkNzk0NGRlOWY3NWZmZjRkMmNlMWZmN18wLTAtMS0xLTA_4bcaa7bc-b4f2-44ce-8d85-5ace822d1168">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xODU1_59fcfba0-be12-43a7-af79-0199ed3d202b">001-36583</dei:EntityFileNumber>
    <dei:EntityIncorporationStateCountryCode
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF8wLTAtMS0xLTA_46a30817-7e47-4c68-826f-b4a7d63c1d7b">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF8wLTItMS0xLTA_04278d6f-295f-403b-a501-7b97ea93938a">94-3021850</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF8zLTAtMS0xLTAvdGV4dHJlZ2lvbjpjNDJmOTM4ZjY3MTM0MTBkOWJhNTQ1M2Y3YjIxNjMwOF80_a1f86a8b-2ae3-4a0b-8aea-f36aaee5e0fc">32000&#160;Aurora&#160;Road</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF8zLTAtMS0xLTAvdGV4dHJlZ2lvbjpjNDJmOTM4ZjY3MTM0MTBkOWJhNTQ1M2Y3YjIxNjMwOF84_5c01d9cd-d636-473c-abdc-4f9a14dbcecb">Suite B</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF8zLTAtMS0xLTAvdGV4dHJlZ2lvbjpjNDJmOTM4ZjY3MTM0MTBkOWJhNTQ1M2Y3YjIxNjMwOF8xMQ_0437ddc7-b6fe-4078-b323-e79aea1eb207">Solon</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF8zLTAtMS0xLTAvdGV4dHJlZ2lvbjpjNDJmOTM4ZjY3MTM0MTBkOWJhNTQ1M2Y3YjIxNjMwOF8xNQ_2ab5c189-a89b-488e-b09d-27e0aa0b72c3">OH</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF82LTAtMS0xLTA_8c47b60e-8808-4b2b-83b6-7af08f4a4bf7">44139</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF84LTAtMS0xLTAvdGV4dHJlZ2lvbjplYTRjMmMxMDEyZTg0ZmI4YTE3ZDc2MzRiMDRhODY5Zl81OA_322d565e-cc47-4302-9ca2-e232bf5b6153">(440)</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6ZTU1NDg0OTI2Mzk2NDFjYmI5NTY0YWQ4Y2M2MTMyMzAvdGFibGVyYW5nZTplNTU0ODQ5MjYzOTY0MWNiYjk1NjRhZDhjYzYxMzIzMF84LTAtMS0xLTAvdGV4dHJlZ2lvbjplYTRjMmMxMDEyZTg0ZmI4YTE3ZDc2MzRiMDRhODY5Zl82MQ_077b4e13-db72-4d52-b8ea-6045eef3ab88">715-1300</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6MjU1ZmViY2ZlYzZiNGEyZDhlMGQ5NjI3MWJkYmE4Y2EvdGFibGVyYW5nZToyNTVmZWJjZmVjNmI0YTJkOGUwZDk2MjcxYmRiYThjYV8xLTAtMS0xLTA_617a0382-882d-4847-8359-850a066f7abb">Common Stock, par value $0.0001 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6MjU1ZmViY2ZlYzZiNGEyZDhlMGQ5NjI3MWJkYmE4Y2EvdGFibGVyYW5nZToyNTVmZWJjZmVjNmI0YTJkOGUwZDk2MjcxYmRiYThjYV8xLTEtMS0xLTA_6b14600f-c660-492a-93cd-d7aeb4684cc8">EFOI</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6MjU1ZmViY2ZlYzZiNGEyZDhlMGQ5NjI3MWJkYmE4Y2EvdGFibGVyYW5nZToyNTVmZWJjZmVjNmI0YTJkOGUwZDk2MjcxYmRiYThjYV8xLTItMS0xLTA_0c7dd98c-353d-4320-8a3e-f30d42936294">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xODU2_facff0b4-8433-434b-a4a5-e6dea10c2ad9">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xODU3_88474ecf-efc7-49d6-8ab3-b2df20edd5e8">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6OGViY2MzMTM4NmI1NGJjZjlhYjQ5N2ZlZGI5MTAxODYvdGFibGVyYW5nZTo4ZWJjYzMxMzg2YjU0YmNmOWFiNDk3ZmVkYjkxMDE4Nl8xLTAtMS0xLTA_ac11f74b-76f3-496f-9ec9-582cd634a586">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6OGViY2MzMTM4NmI1NGJjZjlhYjQ5N2ZlZGI5MTAxODYvdGFibGVyYW5nZTo4ZWJjYzMxMzg2YjU0YmNmOWFiNDk3ZmVkYjkxMDE4Nl8xLTMtMS0xLTA_e24ed366-6730-4724-8dfb-0bac27d2de1e">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGFibGU6OGViY2MzMTM4NmI1NGJjZjlhYjQ5N2ZlZGI5MTAxODYvdGFibGVyYW5nZTo4ZWJjYzMxMzg2YjU0YmNmOWFiNDk3ZmVkYjkxMDE4Nl8yLTMtMS0xLTA_ce22331b-1669-427f-9c0a-ff23b79b1c0a">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xODU4_0dec91cd-525b-4bf7-846c-07776905910c">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="ied75b1bf063b409c8c62ca90898cf369_I20210510"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xL2ZyYWc6ODQwNTMxMmNiMmYyNDZmMWFhNTI5YWY1NDc3MzZiZTgvdGV4dHJlZ2lvbjo4NDA1MzEyY2IyZjI0NmYxYWE1MjlhZjU0NzczNmJlOF8xODUy_6c314112-fd37-4980-bef4-2d5c8a602cc8"
      unitRef="shares">4027271</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNC0xLTEtMS0w_55fdd6cc-0678-4ae1-bea7-67b004c1dca9"
      unitRef="usd">548000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNC0zLTEtMS0w_35931289-3caf-4a5a-9b30-994df5de2326"
      unitRef="usd">1836000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNS0wLTEtMS0wL3RleHRyZWdpb246MjliYmQwZWUwYzAzNGIxMmExN2RmYjdjNTMxMjM1MzFfNTA_5c1c7730-64c6-4143-9b79-dea73933057e"
      unitRef="usd">14000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNS0wLTEtMS0wL3RleHRyZWdpb246MjliYmQwZWUwYzAzNGIxMmExN2RmYjdjNTMxMjM1MzFfNTc_ce2fc774-1c5a-49a2-8cb5-f97d5d2a8504"
      unitRef="usd">8000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNS0xLTEtMS0w_1b7e353f-85c4-4874-98e6-19138338b43e"
      unitRef="usd">1492000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNS0zLTEtMS0w_124bc9bf-3099-4546-a0bb-199d0d5f4228"
      unitRef="usd">2021000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNi0xLTEtMS0w_f665bba7-2dba-42b3-9dd1-4dcefdfbe04c"
      unitRef="usd">7515000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNi0zLTEtMS0w_ec733316-c050-4d29-9be5-b9ab06d5d5ff"
      unitRef="usd">5641000</us-gaap:InventoryNet>
    <us-gaap:DepositsAssetsCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNy0xLTEtMS0yMTk3_6a22951e-c269-4f5f-b966-1a4e004bf58c"
      unitRef="usd">784000</us-gaap:DepositsAssetsCurrent>
    <us-gaap:DepositsAssetsCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNy0zLTEtMS01ODM_45cb6e60-128b-4d6c-9901-42fd6a38d99e"
      unitRef="usd">796000</us-gaap:DepositsAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNy0xLTEtMS0w_f1a975f9-58ed-4c15-9d13-f87b23546edb"
      unitRef="usd">778000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfNy0zLTEtMS0w_da66c6ac-bf2c-4260-aa13-e1b5f0c19594"
      unitRef="usd">782000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfOS0xLTEtMS0w_1cd49edb-6ab5-48a4-8615-060d03d611ac"
      unitRef="usd">11117000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfOS0zLTEtMS0w_15cae66f-c7e2-462b-b928-721872945161"
      unitRef="usd">11076000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTEtMS0xLTEtMA_2c6d07ff-d708-452b-b272-9cf938902686"
      unitRef="usd">482000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTEtMy0xLTEtMA_b0735946-cdd3-4700-900e-b8e49b23e3ae"
      unitRef="usd">420000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTMtMS0xLTEtMA_a04f54dd-a500-4e55-ac48-5ffccf6a2989"
      unitRef="usd">676000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTMtMy0xLTEtMA_b807af17-66c8-4c37-aaee-f62fd4505448"
      unitRef="usd">794000</us-gaap:OperatingLeaseRightOfUseAsset>
    <efoi:RestructuredOperatingLeaseRightOfUseAsset
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTUtMS0xLTEtMA_ed19d5d2-d323-4e89-a59c-67e62834fb15"
      unitRef="usd">54000</efoi:RestructuredOperatingLeaseRightOfUseAsset>
    <efoi:RestructuredOperatingLeaseRightOfUseAsset
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTUtMy0xLTEtMA_ed22cf3f-f8b1-4257-b3f1-652ecf82926c"
      unitRef="usd">107000</efoi:RestructuredOperatingLeaseRightOfUseAsset>
    <us-gaap:Assets
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTgtMS0xLTEtMA_4f4b8ea3-b8e5-4d72-a499-f0301c7b64e2"
      unitRef="usd">12329000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMTgtMy0xLTEtMA_f8f076dc-a9c6-4531-8bf7-a62361e6fae6"
      unitRef="usd">12397000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjItMS0xLTEtMA_1bc328bc-9490-46bc-9171-617d72f03952"
      unitRef="usd">3437000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjItMy0xLTEtMA_87748382-bc75-4a3a-aa15-84e5f7348f75"
      unitRef="usd">2477000</us-gaap:AccountsPayableCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjMtMS0xLTEtMA_4cd1117b-a90c-4f7f-8512-f9ecb97da105"
      unitRef="usd">177000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjMtMy0xLTEtMA_3abf9a88-a57e-4544-805b-490f53bdd4de"
      unitRef="usd">45000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjQtMS0xLTEtMA_ba67fcaf-b7cc-4543-8063-b3c3011d376e"
      unitRef="usd">19000</us-gaap:AccruedProfessionalFeesCurrent>
    <us-gaap:AccruedProfessionalFeesCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjQtMy0xLTEtMA_fff00a32-9b21-422f-a505-53da829fdce5"
      unitRef="usd">149000</us-gaap:AccruedProfessionalFeesCurrent>
    <us-gaap:AccruedEmployeeBenefitsCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjUtMS0xLTEtMA_600a64e0-43cd-4db2-85a7-6d5b1db32024"
      unitRef="usd">787000</us-gaap:AccruedEmployeeBenefitsCurrent>
    <us-gaap:AccruedEmployeeBenefitsCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjUtMy0xLTEtMA_1f9f067d-aabc-4147-ae4f-5239f3780ec4"
      unitRef="usd">885000</us-gaap:AccruedEmployeeBenefitsCurrent>
    <us-gaap:AccruedSalesCommissionCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjYtMS0xLTEtMA_2ecde7b3-bd86-4c6d-a106-7f3c92cfe008"
      unitRef="usd">29000</us-gaap:AccruedSalesCommissionCurrent>
    <us-gaap:AccruedSalesCommissionCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjYtMy0xLTEtMA_1564ed10-574c-4c2e-af5b-29acdb0eca52"
      unitRef="usd">95000</us-gaap:AccruedSalesCommissionCurrent>
    <us-gaap:RestructuringReserveCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjgtMS0xLTEtMA_9e5c02d8-56f2-47d6-b418-dabd6859f477"
      unitRef="usd">5000</us-gaap:RestructuringReserveCurrent>
    <us-gaap:RestructuringReserveCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjgtMy0xLTEtMA_bb83e084-77ea-48d1-83b9-9a7602ceb2ed"
      unitRef="usd">11000</us-gaap:RestructuringReserveCurrent>
    <us-gaap:StandardProductWarrantyAccrualCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjktMS0xLTEtMA_f0d43ad6-2e5c-4064-8d98-2ca9fb16834c"
      unitRef="usd">239000</us-gaap:StandardProductWarrantyAccrualCurrent>
    <us-gaap:StandardProductWarrantyAccrualCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMjktMy0xLTEtMA_93912c88-33ca-443a-afaf-a17cb72d79fc"
      unitRef="usd">227000</us-gaap:StandardProductWarrantyAccrualCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzAtMS0xLTEtMA_c5cf4bb9-f962-41a5-be9e-1568a6b2e8c0"
      unitRef="usd">73000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzAtMy0xLTEtMA_73a80c6f-c756-4889-b2fe-1918bc9934cb"
      unitRef="usd">72000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzEtMS0xLTEtMA_7e29a17f-f9aa-4e71-898e-bf86f56b8790"
      unitRef="usd">609000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzEtMy0xLTEtMA_c28dbe36-cf95-44d5-9268-7f78e17c5976"
      unitRef="usd">598000</us-gaap:OperatingLeaseLiabilityCurrent>
    <efoi:RestructuredOperatingLeaseLiabilityCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzItMS0xLTEtMA_72fb1cf4-ad23-4f58-a388-a4f3d097f200"
      unitRef="usd">85000</efoi:RestructuredOperatingLeaseLiabilityCurrent>
    <efoi:RestructuredOperatingLeaseLiabilityCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzItMy0xLTEtMA_f1e51ce3-e8d2-4297-90ca-b86e3b5db4d0"
      unitRef="usd">168000</efoi:RestructuredOperatingLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzMtMS0xLTEtMA_f65fe3a3-607c-484c-8b22-f3cfa5bb0e53"
      unitRef="usd">3000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzMtMy0xLTEtMA_a215f03d-2ea4-4759-bbc1-1745a2cb1cd5"
      unitRef="usd">3000</us-gaap:FinanceLeaseLiabilityCurrent>
    <efoi:PaymentProtectionProgramCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzctMS0xLTEtMA_f50dcdc9-1ca6-4e70-aa0a-d22d272dd87b"
      unitRef="usd">0</efoi:PaymentProtectionProgramCurrent>
    <efoi:PaymentProtectionProgramCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzctMy0xLTEtMA_2e3f2396-5a62-41fb-9354-e51ac183aa21"
      unitRef="usd">529000</efoi:PaymentProtectionProgramCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzgtMS0xLTEtMA_eaf14ef1-1768-404a-9a6a-42e1ef37f536"
      unitRef="usd">3416000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzgtMy0xLTEtMA_c668f29b-3147-4ad7-abd1-d254734590a4"
      unitRef="usd">2298000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzktMS0xLTEtMA_217d9504-0df8-481d-b9e6-5551a76f5dda"
      unitRef="usd">8879000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOjNlNzZjZDQ4M2JiOTQyMmE4MTcyOTVjZGUzZTAyZjFiL3RhYmxlcmFuZ2U6M2U3NmNkNDgzYmI5NDIyYTgxNzI5NWNkZTNlMDJmMWJfMzktMy0xLTEtMA_c499c9f0-d490-4867-8147-c05e448934f6"
      unitRef="usd">7557000</us-gaap:LiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDMtMS0xLTEtNjkw_2e9f63a1-fe6d-4961-b393-e715ffa6ce8a"
      unitRef="usd">172000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDMtMy0xLTEtNjkw_92ea32a6-7c0b-4211-8582-8c1128322318"
      unitRef="usd">318000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDUtMS0xLTEtNjkw_b236a4f9-63ea-47e1-a7e8-4d547bd37994"
      unitRef="usd">0</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDUtMy0xLTEtNjkw_ed6262be-dd76-4221-93a6-66ceed390127"
      unitRef="usd">1000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <efoi:PaymentProtectionProgramNoncurrent
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDYtMS0xLTEtNjkw_73391a89-3689-4acb-a59c-87fdc44c51fd"
      unitRef="usd">0</efoi:PaymentProtectionProgramNoncurrent>
    <efoi:PaymentProtectionProgramNoncurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDYtMy0xLTEtNjkw_a051e02f-c423-43c7-b415-b6535b0b1a26"
      unitRef="usd">266000</efoi:PaymentProtectionProgramNoncurrent>
    <us-gaap:Liabilities
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDgtMS0xLTEtNjkw_111740c0-1f41-4d01-8b0a-a55fc9c48fbe"
      unitRef="usd">9051000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNDgtMy0xLTEtNjkw_2e2e5205-ef90-4f65-bf7f-66d2a1eb9249"
      unitRef="usd">8142000</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTEtMC0xLTEtNjg0L3RleHRyZWdpb246NWZhYzgzZWQ1M2Y4NGVmZmFiNjE1NjI5YTFlODQyNDlfMzI5ODUzNDg4MzM4NA_094493f1-d946-4450-85f4-4a0e82f917e0"
      unitRef="usdPerShare">0.0001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTEtMC0xLTEtNjg0L3RleHRyZWdpb246NWZhYzgzZWQ1M2Y4NGVmZmFiNjE1NjI5YTFlODQyNDlfMzI5ODUzNDg4MzM4NA_2faf74c8-d6c0-4a38-a449-717a1b384c7f"
      unitRef="usdPerShare">0.0001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTItMC0xLTEtNjg0L3RleHRyZWdpb246ODExMjlmMWM4NjI2NDUxMWJmMjE0OGY5N2Y4ODg5ZTlfMjE5OTAyMzI1NTYzMw_3d482c7c-e6a4-405b-9068-ec2b93ecbbbc"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTItMC0xLTEtNjg0L3RleHRyZWdpb246ODExMjlmMWM4NjI2NDUxMWJmMjE0OGY5N2Y4ODg5ZTlfMjE5OTAyMzI1NTYzMw_6227fc3a-ec5d-4af4-9192-e66dc747f42e"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="iae645623f77e42e5b5e147a4d7803174_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTItMC0xLTEtNjg0L3RleHRyZWdpb246ODExMjlmMWM4NjI2NDUxMWJmMjE0OGY5N2Y4ODg5ZTlfMTA5OTUxMTYyODAxMQ_49c32bb3-67f6-4d28-8fda-99858e89f8b1"
      unitRef="shares">3300000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i8bba8aca45b447dca8a0fe6aadddcdd7_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTItMC0xLTEtNjg0L3RleHRyZWdpb246ODExMjlmMWM4NjI2NDUxMWJmMjE0OGY5N2Y4ODg5ZTlfMTA5OTUxMTYyODAxMQ_c200cda0-50e3-469d-90ca-6a4c8550471c"
      unitRef="shares">3300000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTMtMC0xLTEtNjg0L3RleHRyZWdpb246NWU4MzhkZjI0Nzk2NGNhYmJlZjAxOGEzNTM2ZTM4NmFfMjE5OTAyMzI1NTYzOA_307415c3-66b9-40df-9c74-74f164b188d3"
      unitRef="shares">2597470</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTMtMC0xLTEtNjg0L3RleHRyZWdpb246NWU4MzhkZjI0Nzk2NGNhYmJlZjAxOGEzNTM2ZTM4NmFfMjE5OTAyMzI1NTYzOA_64dcc867-280a-4530-b23f-ea8dfdbcbeda"
      unitRef="shares">2597470</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTMtMC0xLTEtNjg0L3RleHRyZWdpb246NWU4MzhkZjI0Nzk2NGNhYmJlZjAxOGEzNTM2ZTM4NmFfMjE5OTAyMzI1NTYzOA_88375d55-de4e-4702-85d3-aaf59165f5a2"
      unitRef="shares">2597470</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTMtMC0xLTEtNjg0L3RleHRyZWdpb246NWU4MzhkZjI0Nzk2NGNhYmJlZjAxOGEzNTM2ZTM4NmFfMjE5OTAyMzI1NTYzOA_c355139f-7ed5-4a64-8ac0-c6893709a2bc"
      unitRef="shares">2597470</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockValue
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTMtMS0xLTEtNjkw_e94757ef-8621-47c0-b023-b7ea9013c0be"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTMtMy0xLTEtNjkw_de19bf1b-1480-4174-b738-e1d49a348b80"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTQtMC0xLTEtNjg0L3RleHRyZWdpb246NjM3NGU0MDcwNDg1NGFjMWJjOTYwNWE4YzA2MmFjNjlfMzI5ODUzNDg4MzM4MQ_45a5ad8d-e9be-4806-b67f-51d19cf7fae7"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTQtMC0xLTEtNjg0L3RleHRyZWdpb246NjM3NGU0MDcwNDg1NGFjMWJjOTYwNWE4YzA2MmFjNjlfMzI5ODUzNDg4MzM4MQ_964234b7-d873-4be7-ae45-cea957dd2abe"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTUtMC0xLTEtNjg0L3RleHRyZWdpb246MDlhODM0YjZiNjE2NGY5YzhkMTFkOTlkN2EzMjMzMTZfMjE5OTAyMzI1NTYzNQ_5919fe6d-af0b-48da-90ae-5f43cf985e45"
      unitRef="shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTUtMC0xLTEtNjg0L3RleHRyZWdpb246MDlhODM0YjZiNjE2NGY5YzhkMTFkOTlkN2EzMjMzMTZfMjE5OTAyMzI1NTYzNQ_f2a47c47-52b3-42ed-9c9c-91ae035aebdf"
      unitRef="shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTYtMC0xLTEtNjg0L3RleHRyZWdpb246OGNjZTk0N2Y1MTQ4NDVmZDg5M2QzMzE2MTJkMzE2ZWJfMjE5OTAyMzI1NTY1MQ_3fad5cd7-c45c-4938-8aa3-a16623db3aa0"
      unitRef="shares">3682816</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTYtMC0xLTEtNjg0L3RleHRyZWdpb246OGNjZTk0N2Y1MTQ4NDVmZDg5M2QzMzE2MTJkMzE2ZWJfMjE5OTAyMzI1NTY1MQ_63602ebb-7ddf-4e7f-9cdb-3be9041da7e0"
      unitRef="shares">3682816</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTYtMC0xLTEtNjg0L3RleHRyZWdpb246OGNjZTk0N2Y1MTQ4NDVmZDg5M2QzMzE2MTJkMzE2ZWJfMjE5OTAyMzI1NTY2Mw_2a075666-4dc7-4e4d-9b6e-c1270dcf879a"
      unitRef="shares">3525374</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTYtMC0xLTEtNjg0L3RleHRyZWdpb246OGNjZTk0N2Y1MTQ4NDVmZDg5M2QzMzE2MTJkMzE2ZWJfMjE5OTAyMzI1NTY2Mw_dfa8af07-e20f-40b5-89a9-2b3c75b97cc3"
      unitRef="shares">3525374</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTYtMS0xLTEtNjkw_eb54fdab-761f-4fa8-a6dd-f1a594dbb0ca"
      unitRef="usd">0</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTYtMy0xLTEtNjkw_b76e65c1-b26e-4642-acda-30426d5d45f8"
      unitRef="usd">0</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTctMS0xLTEtNjkw_32fa76b4-70cb-419b-b362-8dba044095ff"
      unitRef="usd">135778000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTctMy0xLTEtNjkw_0371c76c-ca8f-4333-b44f-cafce6d0cf52"
      unitRef="usd">135113000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTgtMS0xLTEtNjkw_dbd98dd7-f9f4-4bfc-8bf9-1229097f63e4"
      unitRef="usd">-3000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTgtMy0xLTEtNjkw_ec42b8ef-48da-49c7-b4a9-7e0e64b54249"
      unitRef="usd">-3000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTktMS0xLTEtNjkw_cd4237a4-9094-4901-920e-21f28cf1aef1"
      unitRef="usd">-132497000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNTktMy0xLTEtNjkw_8c6f0a1d-a9f3-4287-95e1-e4b02b8cf06a"
      unitRef="usd">-130855000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNjAtMS0xLTEtNjkw_a9ee2e59-3832-4431-a944-e1b40bac631c"
      unitRef="usd">3278000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNjAtMy0xLTEtNjkw_3f84f2e1-a5f9-4511-8a88-3ba046266ff4"
      unitRef="usd">4255000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNjEtMS0xLTEtNjkw_ab838a65-0c5b-4423-bf56-6b7d6f53541f"
      unitRef="usd">12329000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xNi9mcmFnOjk3MzhhNjYxZTlhYzRhMjdhNzg5NjFhYmNhZTk0YTFjL3RhYmxlOmYyODYzMjBlMWE0ZjQyOGFhNGNlNTI3N2JjYzdlMjhkL3RhYmxlcmFuZ2U6ZjI4NjMyMGUxYTRmNDI4YWE0Y2U1Mjc3YmNjN2UyOGRfNjEtMy0xLTEtNjkw_81c2e7b5-8c08-4550-a9c9-9c2c484720b7"
      unitRef="usd">12397000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:Revenues
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMi0xLTEtMS0w_18e6e468-7200-43c4-9ff8-35bb38d74ae0"
      unitRef="usd">2637000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMi0zLTEtMS0w_d6e43fb8-be77-4175-b5ef-ff0412faf4df"
      unitRef="usd">3783000</us-gaap:Revenues>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMy0xLTEtMS0w_f05fd8db-5f96-41dc-b930-95f3db8af68e"
      unitRef="usd">2084000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMy0zLTEtMS0w_7ab0d6d2-9ebd-44a2-a021-33bbe317fad7"
      unitRef="usd">2751000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfNC0xLTEtMS0w_4dd7cdc2-40bb-4412-aa79-861c39925882"
      unitRef="usd">553000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfNC0zLTEtMS0w_3a0c5caf-4f8b-4435-8774-00fe00946de5"
      unitRef="usd">1032000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfNy0xLTEtMS0w_9df4378f-9500-4dc8-a629-58ca9bf5aab4"
      unitRef="usd">653000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfNy0zLTEtMS0w_c1e7f3ae-6306-45b0-95f6-94528a58038b"
      unitRef="usd">282000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfOC0xLTEtMS0w_ede3e182-7c45-40ba-8576-49b970108db6"
      unitRef="usd">2218000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfOC0zLTEtMS0w_f8ef23f2-c051-45a7-afbd-80368671c257"
      unitRef="usd">2027000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:RestructuringCosts
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfOS0xLTEtMS0w_45ef9e50-a491-4466-aa4e-9ced26e61a1a"
      unitRef="usd">-19000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfOS0zLTEtMS0w_435071a1-157e-48db-a35a-d135f531a5aa"
      unitRef="usd">-14000</us-gaap:RestructuringCosts>
    <us-gaap:OperatingExpenses
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTAtMS0xLTEtMA_82e3269e-91d8-4515-8ce3-398ffc7a5c76"
      unitRef="usd">2852000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTAtMy0xLTEtMA_3914c7b0-2556-4202-98c6-7bd6e76938c2"
      unitRef="usd">2295000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTEtMS0xLTEtMA_d11c1e58-cc17-4291-8e5d-01752e5d249c"
      unitRef="usd">-2299000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTEtMy0xLTEtMA_56865c25-15a6-4a7e-9693-80c1f3cf9c95"
      unitRef="usd">-1263000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestExpense
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTQtMS0xLTEtMA_a1a1426b-4a02-4d3e-bb91-e57d8a54438f"
      unitRef="usd">127000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTQtMy0xLTEtMA_376b4803-ff65-4c15-8ab1-152203fc9a27"
      unitRef="usd">133000</us-gaap:InterestExpense>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTUtMS0xLTEtMA_b6f329d3-de66-4861-ab6c-24d38fded0d6"
      unitRef="usd">801000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTUtMy0xLTEtMA_55e44c00-031b-451b-b4cd-1f59e8d42553"
      unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:FairValueAdjustmentOfWarrants
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTYtMS0xLTEtMA_a1e4c38f-cfcc-4f4a-9af2-767978119147"
      unitRef="usd">0</us-gaap:FairValueAdjustmentOfWarrants>
    <us-gaap:FairValueAdjustmentOfWarrants
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTYtMy0xLTEtMA_3c8044a3-c727-4ea7-8aa3-ec9a39046986"
      unitRef="usd">-873000</us-gaap:FairValueAdjustmentOfWarrants>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTctMS0xLTEtMA_fe365a71-f128-416a-bbbc-c4bb106495e4"
      unitRef="usd">-17000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMTctMy0xLTEtMA_ed3286d0-7f1a-4201-bc89-c27e82c1b919"
      unitRef="usd">-18000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NetIncomeLoss
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjEtMS0xLTEtMA_bb3edf58-4cc7-47f6-8252-12a01a678462"
      unitRef="usd">-1642000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjEtMy0xLTEtMA_d8e287b8-7096-4d4e-996c-1465560e0dff"
      unitRef="usd">-541000</us-gaap:NetIncomeLoss>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicAndDilutedShare
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjQtMS0xLTEtMA_f24c754f-5fbd-4f5d-b320-62eeb9ef9941"
      unitRef="usdPerShare">-0.45</us-gaap:IncomeLossFromContinuingOperationsPerBasicAndDilutedShare>
    <us-gaap:IncomeLossFromContinuingOperationsPerBasicAndDilutedShare
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjQtMy0xLTEtMA_cc03605a-470e-4e4c-81fc-0814b0ecc328"
      unitRef="usdPerShare">-0.18</us-gaap:IncomeLossFromContinuingOperationsPerBasicAndDilutedShare>
    <us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjctMS0xLTEtMA_f1e9198e-6dae-467f-9e1c-484110a64f83"
      unitRef="shares">3612000</us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted>
    <us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjctMy0xLTEtMA_a8856013-009f-4f56-8215-8c618471a643"
      unitRef="shares">3086000</us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted>
    <us-gaap:NetIncomeLoss
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yNS9mcmFnOjIxYWFiZjllODMyMTRkOTE5Y2RlNjgwOTQyMzJhMWU4L3RhYmxlOjE1MWJjNmI4MDViZDQ1OTA4ZWRmZmJlMDhjNjNhODk5L3RhYmxlcmFuZ2U6MTUxYmM2YjgwNWJkNDU5MDhlZGZmYmUwOGM2M2E4OTlfMi0xLTEtMS0w_c28f8025-a715-4224-bb37-cd68c483e6b2"
      unitRef="usd">-1642000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yNS9mcmFnOjIxYWFiZjllODMyMTRkOTE5Y2RlNjgwOTQyMzJhMWU4L3RhYmxlOjE1MWJjNmI4MDViZDQ1OTA4ZWRmZmJlMDhjNjNhODk5L3RhYmxlcmFuZ2U6MTUxYmM2YjgwNWJkNDU5MDhlZGZmYmUwOGM2M2E4OTlfMi0zLTEtMS0w_4ca19d37-f6ea-4b4a-9759-96b084854920"
      unitRef="usd">-541000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yNS9mcmFnOjIxYWFiZjllODMyMTRkOTE5Y2RlNjgwOTQyMzJhMWU4L3RhYmxlOjE1MWJjNmI4MDViZDQ1OTA4ZWRmZmJlMDhjNjNhODk5L3RhYmxlcmFuZ2U6MTUxYmM2YjgwNWJkNDU5MDhlZGZmYmUwOGM2M2E4OTlfNS0xLTEtMS0w_a2c020b1-9c37-4977-90f5-ad544de45336"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yNS9mcmFnOjIxYWFiZjllODMyMTRkOTE5Y2RlNjgwOTQyMzJhMWU4L3RhYmxlOjE1MWJjNmI4MDViZDQ1OTA4ZWRmZmJlMDhjNjNhODk5L3RhYmxlcmFuZ2U6MTUxYmM2YjgwNWJkNDU5MDhlZGZmYmUwOGM2M2E4OTlfNS0zLTEtMS0w_af182878-29fb-4e5b-bbfe-acffab8bb827"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yNS9mcmFnOjIxYWFiZjllODMyMTRkOTE5Y2RlNjgwOTQyMzJhMWU4L3RhYmxlOjE1MWJjNmI4MDViZDQ1OTA4ZWRmZmJlMDhjNjNhODk5L3RhYmxlcmFuZ2U6MTUxYmM2YjgwNWJkNDU5MDhlZGZmYmUwOGM2M2E4OTlfNy0xLTEtMS0w_cd8d1ec1-40c0-4df2-b5da-07631a4c42f2"
      unitRef="usd">-1642000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yNS9mcmFnOjIxYWFiZjllODMyMTRkOTE5Y2RlNjgwOTQyMzJhMWU4L3RhYmxlOjE1MWJjNmI4MDViZDQ1OTA4ZWRmZmJlMDhjNjNhODk5L3RhYmxlcmFuZ2U6MTUxYmM2YjgwNWJkNDU5MDhlZGZmYmUwOGM2M2E4OTlfNy0zLTEtMS0w_077c1de3-239d-4b94-b353-3e336390475c"
      unitRef="usd">-541000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:SharesOutstanding
      contextRef="iefa2f8c5d2494f84a4889f4269ec295c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy0yLTEtMS0w_fc32fdc2-9bdc-4bfb-bda6-b1c4b1eaa15d"
      unitRef="shares">2597000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="iefa2f8c5d2494f84a4889f4269ec295c_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy00LTEtMS0w_f0cc5bff-08d1-4c66-b5d5-48ead5fee00d"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="ib0c30d855fb94190b54430d1d98b67d2_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy02LTEtMS0w_de5f3def-89b2-4472-8f54-948c3db66ab8"
      unitRef="shares">3525000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="ib0c30d855fb94190b54430d1d98b67d2_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy04LTEtMS0w_64822e0c-0368-40ce-92ab-98c65f29cc3b"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ifb09e59072d14268b8167df84d28bcbb_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy0xNC0xLTEtMA_7656fb47-1c39-4f69-82ce-3cbd8209df5c"
      unitRef="usd">135113000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ic25ef8ed452643c192dc1b856cce88ce_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy0xNi0xLTEtMA_2a284a19-f879-4c16-8196-0d0608bda42a"
      unitRef="usd">-3000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i935f80c4157c4844940f1b9e9b3bbc9b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy0xOC0xLTEtMA_ff1d77eb-1dcb-4a7d-b128-c566f3e11d1d"
      unitRef="usd">-130855000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy0yMC0xLTEtMA_e2257b9e-7fd8-4ed0-ba34-ba78ce37fb64"
      unitRef="usd">4255000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i8311295ceced4887b52bb77f08688ba2_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNS02LTEtMS0w_447a037c-ae2e-483f-9d5f-c90a8f20c03a"
      unitRef="shares">1000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNS0yMC0xLTEtMA_c32c3741-1d2b-413b-a027-5850e87a592d"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised
      contextRef="i8311295ceced4887b52bb77f08688ba2_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNi02LTEtMS0w_bfedf842-57f1-489c-913c-ef55255d7cad"
      unitRef="shares">156000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="i9ef8836cce7e40659ce9d5656d0e1dc3_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNi0xNC0xLTEtMA_caad0bee-cd1f-4427-8d54-712a88bf2790"
      unitRef="usd">527000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:StockIssuedDuringPeriodValueNewIssues
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNi0yMC0xLTEtMA_ca1587f9-ac9d-45ae-b621-f2d69db89056"
      unitRef="usd">527000</us-gaap:StockIssuedDuringPeriodValueNewIssues>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="i8311295ceced4887b52bb77f08688ba2_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTAtNi0xLTEtMA_57bfde58-c0d7-4fb4-a6b3-d43585ac2a14"
      unitRef="shares">0</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i9ef8836cce7e40659ce9d5656d0e1dc3_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTAtMTQtMS0xLTA_b7f555f5-555a-485d-9b21-e6445b2ec38e"
      unitRef="usd">2000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTAtMjAtMS0xLTA_c894be98-d4c3-4087-91da-5bf7f8094342"
      unitRef="usd">2000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="i9ef8836cce7e40659ce9d5656d0e1dc3_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTEtMTQtMS0xLTA_ec86436e-8256-4546-9809-dfe97279d4ff"
      unitRef="usd">140000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTEtMjAtMS0xLTA_81fe8441-cf7f-4ffa-bc14-72cc70ff436c"
      unitRef="usd">140000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i914b601634db4c02a91ffcca4c1681dd_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTItMTgtMS0xLTA_d9f730a7-2a25-404a-bf97-ebcad592a0fd"
      unitRef="usd">-1642000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTItMjAtMS0xLTA_52abffed-0bb2-4f3e-9c2e-9ef820da343d"
      unitRef="usd">-1642000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:SharesOutstanding
      contextRef="ic30667e4d1c14c38b17e5e0c135745cc_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtMi0xLTEtMA_0c44b2b9-0b4a-481c-ab2f-121bfff72f9a"
      unitRef="shares">2597000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="ic30667e4d1c14c38b17e5e0c135745cc_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtNC0xLTEtMA_d2ba6800-4af6-458d-ae48-c31f87ca7055"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="ic6127dfec7cc4a26a5679368ae0f6331_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtNi0xLTEtMA_77728eb0-8b35-4ad5-83eb-85013861160a"
      unitRef="shares">3682000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="ic6127dfec7cc4a26a5679368ae0f6331_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtOC0xLTEtMA_4d6f8d70-635e-4521-93c7-491d622ca290"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i1feef45a88014e6f88c7c491aef496dd_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtMTQtMS0xLTA_587a795b-6e6c-451d-9d8e-dee0d8b81a72"
      unitRef="usd">135778000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id717036fa6a84777abf568d01d8c77d7_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtMTYtMS0xLTA_9269bdf3-75be-48bd-9884-d3fa91d2aa42"
      unitRef="usd">-3000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i65811a43f59446e092002acba8e94052_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtMTgtMS0xLTA_196a48fd-dea5-42e2-a535-a85adb147b6b"
      unitRef="usd">-132497000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtMjAtMS0xLTA_ab1a9132-059c-4c28-bdde-3355f32a9b5f"
      unitRef="usd">3278000</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="i79484b12568d4589885611a2120d0f97_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0yLTEtMS0xMzM_6d662255-4615-4a37-9d1e-4736ce51944a"
      unitRef="shares">0</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i79484b12568d4589885611a2120d0f97_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy00LTEtMS0xMzM_f95fdd54-053a-4039-b3f6-6bca0ec2ffe4"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="if08ae7d128714b3e92be1b377916eb91_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0yLTEtMS0w_712932eb-82a7-40bc-8a6f-f3402dbeb862"
      unitRef="shares">2486000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="if08ae7d128714b3e92be1b377916eb91_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy00LTEtMS0w_3fe0df87-1c9b-4c67-8d95-d4f966c1ae76"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id5f8d6f4d1b44677bcc8adf664cf853c_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0xMC0xLTEtMA_dad79e5c-7ce6-4aae-9181-7f010a4aedd8"
      unitRef="usd">128873000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i6a96f27ca97a4544a2d8a3dc39035908_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0xMi0xLTEtMA_c882d721-79ae-47fe-a599-8cad9887b610"
      unitRef="usd">-3000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ic3460a1e7c5f44a09209f32a5366d644_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0xNC0xLTEtMA_ed679272-be2a-4e1c-a7cb-91888dd77c37"
      unitRef="usd">-124874000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia14618e080534548a2781f9ad7ec8f84_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0xNi0xLTEtMA_6abdb881-b4ee-43d4-883b-ab8b21e2df6e"
      unitRef="usd">3996000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans
      contextRef="i81985727a69745758bddf991481d0505_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNS0yLTEtMS0w_85c12ce7-51a9-4a19-8abb-260b030a4235"
      unitRef="shares">5000</us-gaap:StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans>
    <us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNS0xNi0xLTEtMA_50c7233e-f5bf-4187-8f9a-53c713f2730c"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan>
    <us-gaap:StockIssuedDuringPeriodSharesPeriodIncreaseDecrease
      contextRef="i81985727a69745758bddf991481d0505_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNi02LTEtMS0xMzc_61837e39-d192-430b-b0c5-f5955d7860bf"
      unitRef="shares">688000</us-gaap:StockIssuedDuringPeriodSharesPeriodIncreaseDecrease>
    <us-gaap:StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants
      contextRef="i67803bc7a01c456e80a6846be17ef60d_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNi0xNC0xLTEtMTM3_a8723158-4f37-4f25-b920-65269204860d"
      unitRef="usd">2749000</us-gaap:StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants>
    <us-gaap:StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNi0yMC0xLTEtMTM3_881393a5-6317-4844-9cf9-5974233a3ea1"
      unitRef="usd">2749000</us-gaap:StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts
      contextRef="i67803bc7a01c456e80a6846be17ef60d_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNy0xNC0xLTEtMTM3_c29f1a11-b984-433a-995a-53f4c6d08913"
      unitRef="usd">474000</us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNy0yMC0xLTEtMTM3_0269d7f1-a709-4335-9deb-d64efb04d1e1"
      unitRef="usd">474000</us-gaap:AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued
      contextRef="i67803bc7a01c456e80a6846be17ef60d_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfOC0xNC0xLTEtMTM3_003c6989-0667-43a3-a70a-ecaa9ff5e4bd"
      unitRef="usd">-1636000</us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfOC0yMC0xLTEtMTM3_ae50ee55-07f9-46c9-bc81-958814068589"
      unitRef="usd">-1636000</us-gaap:AdjustmentsToAdditionalPaidInCapitalWarrantIssued>
    <us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities
      contextRef="ied33f6c53d764225aa6f8c145679b518_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfOS0yLTEtMS0xMzc_ccf11c70-f580-4742-8acf-f39a7a68bc43"
      unitRef="shares">2709000</us-gaap:StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="i9455098d06554ec0adf612293c2144a1_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfOS0xNC0xLTEtMTM3_c476341e-c0d7-466c-96f7-6cd8245ce5bf"
      unitRef="usd">1769000</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities
      contextRef="i0a8148c40d814bfd89d54a226595752e_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfOS0yMC0xLTEtMTM3_7d5b03b5-3fe2-4655-b917-7ed67bc17413"
      unitRef="usd">1769000</us-gaap:StockIssuedDuringPeriodValueConversionOfConvertibleSecurities>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="i67803bc7a01c456e80a6846be17ef60d_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNy0xMC0xLTEtMA_48c4967e-c49d-446c-be65-f2a20531f9db"
      unitRef="usd">20000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNy0xNi0xLTEtMA_0340fa2e-7f5d-4a4c-8675-d461a48239f7"
      unitRef="usd">20000</us-gaap:AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i4214f4a61aea40e8bef111db565b878e_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTAtMTQtMS0xLTA_e942d10e-bb48-4d8f-aa23-b8e260bae3a7"
      unitRef="usd">-541000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTAtMTYtMS0xLTA_c446c81e-7641-4cf1-b3c1-8990dab3e3bf"
      unitRef="usd">-541000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:SharesOutstanding
      contextRef="i7aebac5aec544ae3b2afb6da8016cdc9_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTUtMi0xLTEtMTYw_37a34a2c-dcbb-4162-ae98-a7b866353cbf"
      unitRef="shares">2709000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i7aebac5aec544ae3b2afb6da8016cdc9_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTUtNC0xLTEtMTYw_bc622e9c-9663-4f7b-a087-cf4c9cdfa80c"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="i1c85bdd333f64a73bad6e2d47e396c8d_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMi0xLTEtMA_83e4d7dd-40c0-4d8f-b2ae-4bb9417fce42"
      unitRef="shares">3179000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i1c85bdd333f64a73bad6e2d47e396c8d_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtNC0xLTEtMA_1702bdcf-ef14-4b1a-98d7-476aa264c216"
      unitRef="usd">0</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i26e85c903f5047c7b6a506e3150f982a_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMTAtMS0xLTA_df17f54e-7675-4917-99cb-e7b4d8fe24e5"
      unitRef="usd">131301000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8b380c143505472ea52a1d6c64de8ec9_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMTItMS0xLTA_a301f7bf-6c61-4d38-84a9-cb72424ad08c"
      unitRef="usd">-3000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i966f4d480fe049d7b6c17f4a72dc83da_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMTQtMS0xLTA_0ecc7c83-0974-4be6-af8f-e9e79123f281"
      unitRef="usd">-125415000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMTYtMS0xLTA_5de3a284-2986-4c68-bebd-49679d32e4d2"
      unitRef="usd">5883000</us-gaap:StockholdersEquity>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMy0xLTEtMS0w_2d4a8a01-37e6-4cf8-a94c-60fa3eba3f32"
      unitRef="usd">-1642000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:IncomeLossFromContinuingOperations
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMy0zLTEtMS0w_0118eb9e-29df-401a-976c-a20e81290320"
      unitRef="usd">-541000</us-gaap:IncomeLossFromContinuingOperations>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNS0xLTEtMS0yMTkw_f939ebfa-6a0e-4d3e-b8c4-d73f40373ef9"
      unitRef="usd">801000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNS0zLTEtMS0yMTkw_a0f5aef3-7064-4720-b93a-fc697a820bcf"
      unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:Depreciation
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNS0xLTEtMS0w_a4d99435-50b3-4529-8a11-452a8fee7a54"
      unitRef="usd">47000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNS0zLTEtMS0w_7f0f0ba0-f291-401a-81f9-e327de2aa303"
      unitRef="usd">46000</us-gaap:Depreciation>
    <us-gaap:ShareBasedCompensation
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNi0xLTEtMS0w_d7914089-81cf-45c6-ada0-0eb315b08751"
      unitRef="usd">140000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNi0zLTEtMS0w_845e914a-29ab-4a3f-a543-1b0cd1d3720d"
      unitRef="usd">20000</us-gaap:ShareBasedCompensation>
    <us-gaap:FairValueAdjustmentOfWarrants
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNy0xLTEtMS0w_e924f7c4-3c8c-4bb0-badb-39a32f866c7c"
      unitRef="usd">0</us-gaap:FairValueAdjustmentOfWarrants>
    <us-gaap:FairValueAdjustmentOfWarrants
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfNy0zLTEtMS0w_2564f006-e1d5-417e-858c-2ac9ca8327ad"
      unitRef="usd">-873000</us-gaap:FairValueAdjustmentOfWarrants>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfOC0xLTEtMS0w_4c82703e-302a-49c7-94d3-e1e4c730f995"
      unitRef="usd">6000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfOC0zLTEtMS0w_27b80ffe-12ef-4f09-ba45-f9880c4833e7"
      unitRef="usd">-12000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:InventoryWriteDown
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfOS0xLTEtMS0w_b4c49a04-cd4c-413e-b04c-7c6942df5c9d"
      unitRef="usd">89000</us-gaap:InventoryWriteDown>
    <us-gaap:InventoryWriteDown
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfOS0zLTEtMS0w_a2b1e3c2-7dd1-4ea3-9264-0a9d0479803c"
      unitRef="usd">-78000</us-gaap:InventoryWriteDown>
    <efoi:IncreaseDecreaseInProvisionForWarranties
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTAtMS0xLTEtMA_efcfc632-a706-4e27-b8ab-f8087ee786fd"
      unitRef="usd">12000</efoi:IncreaseDecreaseInProvisionForWarranties>
    <efoi:IncreaseDecreaseInProvisionForWarranties
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTAtMy0xLTEtMA_bcde571b-199e-4511-8be9-9a7229679d06"
      unitRef="usd">44000</efoi:IncreaseDecreaseInProvisionForWarranties>
    <us-gaap:AmortizationOfDeferredLoanOriginationFeesNet
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTItMS0xLTEtMA_206faaaa-46e0-493b-9438-e8f5c6076350"
      unitRef="usd">-38000</us-gaap:AmortizationOfDeferredLoanOriginationFeesNet>
    <us-gaap:AmortizationOfDeferredLoanOriginationFeesNet
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTItMy0xLTEtMA_5b3ab201-256f-49c7-84ee-28338a548f93"
      unitRef="usd">-38000</us-gaap:AmortizationOfDeferredLoanOriginationFeesNet>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTUtMS0xLTEtMA_84b067c7-a03b-40c6-b20f-3ec6fe3f518a"
      unitRef="usd">-532000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTUtMy0xLTEtMA_32dbe582-dc56-4aca-b44a-75d452311b1f"
      unitRef="usd">-445000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTYtMS0xLTEtMA_f2a349f4-cfe0-4d53-a94f-fb71b27a98e7"
      unitRef="usd">1963000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTYtMy0xLTEtMA_66483748-33a5-4a05-8875-3da83b6d7638"
      unitRef="usd">-1546000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInDepositOtherAssets
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTctMS0xLTEtMA_7eb1faa5-0b4f-45dc-a1e5-f69406feac70"
      unitRef="usd">-12000</us-gaap:IncreaseDecreaseInDepositOtherAssets>
    <us-gaap:IncreaseDecreaseInDepositOtherAssets
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTctMy0xLTEtMA_cbf0e3fe-34d4-480a-b30a-43f958c06ff9"
      unitRef="usd">240000</us-gaap:IncreaseDecreaseInDepositOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTgtMS0xLTEtMA_f35e1533-a18f-4259-98c0-86ab10b834ac"
      unitRef="usd">-4000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTgtMy0xLTEtMA_17fdc3a4-9952-4753-8acf-4bd0932a286b"
      unitRef="usd">-53000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTktMS0xLTEtMA_28179b70-2e98-4a56-aed8-cb658cf2f1a9"
      unitRef="usd">951000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMTktMy0xLTEtMA_9f0e6b2e-7700-44cc-8e33-66c4e0d214b0"
      unitRef="usd">-152000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjAtMS0xLTEtMA_e3fffea7-4a83-4d02-a1ed-da2f18f40998"
      unitRef="usd">-209000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjAtMy0xLTEtMA_d7271ced-3fb3-427d-b367-ea9fd659926f"
      unitRef="usd">222000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjEtMS0xLTEtMA_b12967cc-74d2-4bfd-b1a4-6cc84a602535"
      unitRef="usd">1000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:IncreaseDecreaseInDeferredRevenue
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjEtMy0xLTEtMA_e3aa2068-9a0d-4874-abab-985f5066ed9e"
      unitRef="usd">-14000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjItMS0xLTEtMA_637820bf-7483-4ac0-b4fb-a90128b19541"
      unitRef="usd">-1141000</us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities>
    <us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjItMy0xLTEtMA_44e4c83a-3369-4945-a9f2-ad9ca8b18865"
      unitRef="usd">1045000</us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjMtMS0xLTEtOTY0_1a24aeb3-b06d-43da-ad24-316b5c22b938"
      unitRef="usd">-2783000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjMtMy0xLTEtOTY0_938037a6-0a7e-4ca4-a5f5-c05404e67782"
      unitRef="usd">504000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjUtMS0xLTEtMA_8145f27f-db88-4c87-b4a6-58e19a026e02"
      unitRef="usd">109000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjUtMy0xLTEtMA_c3a054cb-679b-4f03-97fe-af852da653a5"
      unitRef="usd">47000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjctMS0xLTEtMA_df802876-dbaa-436d-b679-66551cf85944"
      unitRef="usd">-109000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjZlN2FkZmRlYzQ0MjQ4OTA5MTk0NTVhYWFhNGY0NzBjL3RhYmxlcmFuZ2U6NmU3YWRmZGVjNDQyNDg5MDkxOTQ1NWFhYWE0ZjQ3MGNfMjctMy0xLTEtMA_4ddc0bb0-daff-40ef-a836-039ac10553e9"
      unitRef="usd">-47000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <efoi:ProceedsFromIssuanceOfCommonStockAndWarrants
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMS0xLTEtMS05MzU_ea842701-f00c-42bb-b1a8-67981ad8fd80"
      unitRef="usd">0</efoi:ProceedsFromIssuanceOfCommonStockAndWarrants>
    <efoi:ProceedsFromIssuanceOfCommonStockAndWarrants
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMS0zLTEtMS05MzU_3e8932aa-e377-458d-a283-dd9132322b1f"
      unitRef="usd">2750000</efoi:ProceedsFromIssuanceOfCommonStockAndWarrants>
    <us-gaap:ProceedsFromWarrantExercises
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMi0xLTEtMS05MzU_c5217cd1-c5bf-462f-860c-b01fd7eb2850"
      unitRef="usd">527000</us-gaap:ProceedsFromWarrantExercises>
    <us-gaap:ProceedsFromWarrantExercises
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMi0zLTEtMS05MzU_57ef1ffe-3e82-459b-81e1-f0bacf54d4fa"
      unitRef="usd">0</us-gaap:ProceedsFromWarrantExercises>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMy0xLTEtMS05MzU_0889a523-b967-4d8a-b481-433e6b0331e2"
      unitRef="usd">0</us-gaap:PaymentsOfStockIssuanceCosts>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMy0zLTEtMS05MzU_a91b129d-51e0-49b5-92c3-9ebf84b13208"
      unitRef="usd">474000</us-gaap:PaymentsOfStockIssuanceCosts>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfNS0xLTEtMS05MzU_8276aa20-236d-41d3-83d4-6b9233b0ae38"
      unitRef="usd">1000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfNS0zLTEtMS05MzU_8b3c07cb-9d82-4834-a0bd-6a87f497c451"
      unitRef="usd">1000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfNy0xLTEtMS05MzU_650edbc8-8a76-4d08-ac14-e031db907f6d"
      unitRef="usd">2000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfNy0zLTEtMS05MzU_bf22fe22-f02f-4f26-9071-79e063434593"
      unitRef="usd">0</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTAtMS0xLTEtOTM1_465ad64a-de19-4479-bd4a-c22b7b4e123c"
      unitRef="usd">0</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTAtMy0xLTEtOTM1_46ccf743-76d0-4292-8699-2330cc542fc9"
      unitRef="usd">226000</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="i2445ac12b79b4fe9ae5212c144262d44_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTMtMS0xLTEtOTM1_cfbfda1b-ac57-444d-94af-feac597880f0"
      unitRef="usd">0</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="iff3ff954adda4095a804e4cfb5194d74_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTMtMy0xLTEtOTM1_3445a5ae-8d27-46e7-8148-4791369e2dee"
      unitRef="usd">55000</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="i1249020da8174efcb6c1b1321d81b702_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTQtMS0xLTEtOTM1_6e2ddbb3-85e7-47d9-9940-e7b7c354cbe0"
      unitRef="usd">1080000</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:ProceedsFromRepaymentsOfLinesOfCredit
      contextRef="ia4a74a32957d4c4a85349e233b9e36d9_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTQtMy0xLTEtOTM1_39cc3210-01bd-49af-a605-18e7c756554e"
      unitRef="usd">0</us-gaap:ProceedsFromRepaymentsOfLinesOfCredit>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTUtMS0xLTEtOTM1_62ed9cc8-eb7c-45db-808e-73a406f403de"
      unitRef="usd">1604000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTUtMy0xLTEtOTM1_61fc3616-2800-4fa2-b8e1-b26170dc712a"
      unitRef="usd">2104000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTktMS0xLTEtOTM1_fc52a9b1-a448-42d3-a54d-eb4cfc4b2820"
      unitRef="usd">-1288000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMTktMy0xLTEtOTM1_801aa984-5be2-4a99-ae9b-e90d58cdd6ac"
      unitRef="usd">2561000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjAtMS0xLTEtOTkx_406c2a4a-7d2b-4b57-87c4-5da7bc6746e4"
      unitRef="usd">2178000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ia14618e080534548a2781f9ad7ec8f84_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjAtMy0xLTEtOTkx_6e6d2ea4-ddb4-4fd8-8e87-46aeb9657a13"
      unitRef="usd">692000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjEtMS0xLTEtOTkx_bf091978-8ae0-4cd7-abf7-d90950199ab3"
      unitRef="usd">890000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjEtMy0xLTEtOTkx_09f1d0ed-7e04-4852-a1e0-e033cfef763a"
      unitRef="usd">3253000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjQtMS0xLTEtOTM1_52c58bee-3091-4edd-98e6-cbc274aff340"
      unitRef="usd">548000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjQtMy0xLTEtOTM1_87f952ae-c35d-420e-b6ca-b4d101c34ac3"
      unitRef="usd">2911000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCash
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjUtMS0xLTEtOTk2_53522994-8df2-44a2-a374-ebb7c25fafae"
      unitRef="usd">342000</us-gaap:RestrictedCash>
    <us-gaap:RestrictedCash
      contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjUtMy0xLTEtOTk2_bf34e6d9-7934-448a-a115-cfee1d0cc14e"
      unitRef="usd">342000</us-gaap:RestrictedCash>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjYtMS0xLTEtOTk2_3fb7311f-9c45-4762-a9c6-28fa5f048448"
      unitRef="usd">890000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8zNC9mcmFnOmIzYjEyNjI1NzA2ZDRhN2M4YWMxZWZlNmI4MjllZjQwL3RhYmxlOjk0ZTRlYjdjZDFkZTRiOWM4NmI0MTFjZGViNjczZjVmL3RhYmxlcmFuZ2U6OTRlNGViN2NkMWRlNGI5Yzg2YjQxMWNkZWI2NzNmNWZfMjYtMy0xLTEtOTk2_400083bc-d941-4f09-ac34-8c5914c48a96"
      unitRef="usd">3253000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:NatureOfOperations
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80MC9mcmFnOjIyZTM4MDZkODhhYTQ3NWI5OGQ0NmNjZjBjMmI0OTM5L3RleHRyZWdpb246MjJlMzgwNmQ4OGFhNDc1Yjk4ZDQ2Y2NmMGMyYjQ5MzlfMjY1OQ_daf1613e-fefa-4ad9-8151-e3a91d89f9d0">NATURE OF&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;OPERATIONS&lt;/span&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Energy Focus, Inc. engages primarily in the design, development, manufacturing, marketing and sale of energy-efficient lighting systems and controls and recently announced development of ultraviolet-C light disinfection (&#x201c;UVCD&#x201d;) products. We develop, market and sell high quality light-emitting diode (&#x201c;LED&#x201d;) lighting products and UVCD products and controls in the commercial market and military maritime market (&#x201c;MMM&#x201d;). Our mission is to enable our customers to run their facilities and offices with greater energy efficiency, productivity, and human health through advanced LED retrofit and UVCD solutions. Our goal is to be the LED and human-centric lighting (&#x201c;HCL&#x201d;) technology and market leader for the most demanding applications where performance, quality, value (high quality at an affordable price), environmental impact and health are considered paramount. We specialize in LED lighting retrofit by replacing fluorescent, high-intensity discharge lighting and other types of lamps in institutional buildings for primarily indoor lighting applications with our innovative, high-quality commercial and military tubular LED (&#x201c;TLED&#x201d;), as well as other LED and lighting control products. On October 14, 2020, we also announced the launch of our UVCD product portfolio which is being brought to market in 2021.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;On June 11, 2020, in accordance with previous stockholder approval, our Board of Directors effected a 1-for-5 (the &#x201c;Split Ratio&#x201d;) reverse stock split of the Company&#x2019;s common stock, par value $0.0001 per share. The reverse stock split became effective immediately upon the filing of the Certificate of Amendment to the Company&#x2019;s Certificate of Incorporation, as amended (the &#x201c;Certificate of Incorporation&#x201d;), with the Delaware Secretary of State (the &#x201c;Effective Time&#x201d;). At the Effective Time, every five shares of common stock issued and outstanding automatically combined into one validly issued, fully paid and non-assessable share of common stock. No fractional shares were issued as a result of the reverse stock split. The $0.0001 par value per share of common stock and other terms of the common stock were not affected by the reverse stock split. The number of authorized shares of common stock under the Certificate of Incorporation remained unchanged at 50,000,000 shares. Proportional adjustments were made to the conversion and exercise prices of our outstanding warrants and stock options, and to the number of shares issued and issuable under our stock incentive plans in connection with the reverse stock split. The information presented in the financial statements for all prior periods have been retroactively adjusted to reflect the reverse stock split. Preferred shares outstanding were not affected by the reverse stock split and, as such, those shares have not been adjusted.&lt;/span&gt;&lt;/div&gt;</us-gaap:NatureOfOperations>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i66985daeedc64cd7ab86f489ac45819c_I20200611"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80MC9mcmFnOjIyZTM4MDZkODhhYTQ3NWI5OGQ0NmNjZjBjMmI0OTM5L3RleHRyZWdpb246MjJlMzgwNmQ4OGFhNDc1Yjk4ZDQ2Y2NmMGMyYjQ5MzlfMTA5OTUxMTYzNzA2MQ_c78535c0-ffa3-4b52-a19b-61af4e2ce49c"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i66985daeedc64cd7ab86f489ac45819c_I20200611"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80MC9mcmFnOjIyZTM4MDZkODhhYTQ3NWI5OGQ0NmNjZjBjMmI0OTM5L3RleHRyZWdpb246MjJlMzgwNmQ4OGFhNDc1Yjk4ZDQ2Y2NmMGMyYjQ5MzlfMTA5OTUxMTYzNzA2NQ_c78535c0-ffa3-4b52-a19b-61af4e2ce49c"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i66985daeedc64cd7ab86f489ac45819c_I20200611"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80MC9mcmFnOjIyZTM4MDZkODhhYTQ3NWI5OGQ0NmNjZjBjMmI0OTM5L3RleHRyZWdpb246MjJlMzgwNmQ4OGFhNDc1Yjk4ZDQ2Y2NmMGMyYjQ5MzlfMTA5OTUxMTYzNzA2OQ_359bb833-1538-48f3-9605-47dddb504b48"
      unitRef="shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0ODQ_2affd707-b940-4d78-8984-b0eda7a39f1e">&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;BASIS OF PRESENTATION AND&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES&lt;/span&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Basis of presentation&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The significant accounting policies of our Company, which are summarized below, are consistent with accounting principles generally accepted in the United States (&#x201c;U.S. GAAP&#x201d;) and reflect practices appropriate to the business in which we operate. Unless indicated otherwise, the information in the Notes to the Consolidated Financial Statements relates to our operations.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have prepared the accompanying financial data for the three months ended March&#160;31, 2021 and 2020 pursuant to the rules and regulations of the United States Securities and Exchange Commission. Certain information and footnote disclosures normally included in financial statements prepared in accordance with U.S. GAAP have been condensed or omitted pursuant to such rules and regulations. The accompanying financial data and information should be read in conjunction with our Annual Report on Form 10-K for the year ended December&#160;31, 2020 (&#x201c;2020 Annual Report&#x201d;). The Condensed Consolidated Balance Sheet as of December&#160;31, 2020 has been derived from the audited consolidated financial statements at that date but does not include all of the information and footnotes required by U.S. GAAP for complete financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the opinion of management, the accompanying condensed consolidated financial statements contain all normal and recurring adjustments necessary to present fairly our Condensed Consolidated Balance Sheets as of March&#160;31, 2021 and December&#160;31, 2020, Condensed Consolidated Statements of Operations for the three months ended March&#160;31, 2021 and 2020, Condensed Consolidated Statements of Comprehensive Loss for the three months ended March&#160;31, 2021 and 2020, Condensed Consolidated Statements of Changes in Stockholders&#x2019; Equity for the three months ended March&#160;31, 2021 and 2020, and Condensed Consolidated Statements of Cash Flows for the three months ended March&#160;31, 2021 and 2020.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Use of estimates&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of financial statements in accordance with U.S. GAAP requires management to make estimates and assumptions that affect the amounts reported in our financial statements and accompanying notes. Management bases its estimates on historical experience and various other assumptions believed to be reasonable. Although these estimates are based on management&#x2019;s best knowledge of current events and actions that may impact us in the future, actual results may vary from the estimates. Estimates include, but are not limited to, the establishment of reserves for accounts receivable, sales returns, inventory obsolescence and warranty claims; the useful lives of property and equipment; valuation allowance for net deferred taxes; the cost and offsetting income related to sub-leased property; and stock-based compensation. In addition, estimates and assumptions associated with the determination of the fair value of financial instruments and evaluation of long-lived assets for impairment requires considerable judgment. Actual results could differ from those estimates and such differences could be material.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Certain risks and concentrations&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have certain customers whose net sales individually represented 10% or more of our total net sales, or whose net trade accounts receivable balance individually represented 10% or more of our total net trade accounts receivable; we have certain suppliers, which individually represent 10% or more of our total purchases, or whose trade accounts payable balance individually represented 10% or more of our total trade accounts payable balance, as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the three months ended March 31, 2021, sales to our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 50% and 11% of net sales, respectively. When sales to our primary distributor for the U.S. Navy are combined with sales to shipbuilders for the U.S. Navy, total net sales of products for the U.S. Navy comprised approximately 57% of net sales for the same period. For the three months ended March 31, 2020, sales to our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 38% and 15% of net sales, respectively. When sales to our primary distributor for the U.S. Navy are combined with sales to shipbuilders for the U.S. Navy, total net sales of products for the U.S. Navy comprised approximately 46% of net sales for the same period.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 45% and 16% of net trade accounts receivable, respectively, at March&#160;31, 2021. At December 31, 2020, our primary distributor to the U.S. Navy accounted for 28% of our net trade accounts receivable and a shipbuilder for the U.S. Navy accounted for 21% of our net trade accounts receivable. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;One offshore supplier accounted for approximately 26% and 22%, respectively, of our total expenditures for the three months ended March 31, 2021 and March&#160;31, 2020. At March&#160;31, 2021, this same offshore supplier and one domestic supplier accounted for approximately 39% and 10% of our trade accounts payable balance, respectively. At December 31, 2020 this same offshore supplier accounted for approximately 44% of our trade accounts payable balance.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Recent accounting pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In June 2016, the Financial Accounting Standards Board issued Accounting Standard Update No. 2016-13, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, which significantly changes the accounting for credit losses on instruments within its scope. The new guidance introduces an approach based on expected losses to estimate credit losses on certain financial instruments, including trade receivables, and requires an entity to recognize an allowance based on its estimate of expected credit losses rather than incurred losses. For smaller reporting companies, this standard will be effective for interim and annual periods starting after December 15, 2022 and will generally require adoption on a modified retrospective basis. We are in the process of evaluating the impact of the standard. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Revenue&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net sales include revenues from sales of products and shipping and handling charges, net of estimates for product returns. Revenue is measured at the amount of consideration we expect to receive in exchange for the transferred products. We recognize revenue at the point in time when we transfer the promised products to the customer and the customer obtains control over the products. Distributors&#x2019; obligations to us are not contingent upon the resale of our products. We recognize revenue for shipping and handling charges at the time the goods are shipped to the customer, and the costs of outbound &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;freight are included in cost of sales. We provide for product returns based on historical return rates. While we incur costs for sales commissions to our sales employees and outside agents, we recognize commission costs concurrent with the related revenue, as the amortization period is less than one year. We do not incur any other incremental costs to obtain contracts with our customers. Our product warranties are assurance-type warranties, which promise the customer that the products are as specified in the contract. Therefore, the product warranties are not a separate performance obligation and are accounted for as described below. Sales taxes assessed by governmental authorities are accounted for on a net basis and are excluded from net sales.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides a disaggregation of product net sales for the periods presented (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.975%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.912%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.063%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Net sales:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;913&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,736&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;MMM products&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,047&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,637&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Accounts Receivable&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Our trade accounts receivable consist of amounts billed to and currently due from customers. Our customers are currently concentrated in the United States. In the normal course of business, we extend unsecured credit to our customers related to the sale of our products. Credit is extended to customers based on an evaluation of the customer&#x2019;s financial condition and the amounts due are stated at their estimated net realizable value. We utilize an account receivable insurance program with a high credit worthy insurance company where we have the large majority of the accounts receivable insured with a portion of self-retention. This third party also provides creditworthiness ratings and metrics that significantly assist us in evaluating the creditworthiness of both existing and new customers. We maintain allowances for sales returns and doubtful accounts receivable to provide for the estimated number of accounts receivable that will not be collected. The allowance is based on an assessment of customer creditworthiness and historical payment experience, the age of outstanding receivables, and performance guarantees to the extent applicable. Past due amounts are written off when our internal collection efforts have been unsuccessful, and payments subsequently received on such receivables are credited to the allowance for doubtful accounts. We do not generally require collateral from our customers.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Our standard payment terms with customers are net 30 days from the date of shipment, and we do not generally offer extended payment terms to our customers, but exceptions are made in some cases to certain customers or with particular orders. Accordingly, we do not adjust trade accounts receivable for the effects of financing, as we expect the period between the transfer of product to the customer and the receipt of payment from the customer to be in line with our standard payment terms.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Geographic information&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;All of our long-lived fixed assets are located in the United States. Sales attributable to customers outside the United States for both the three months ended March 31, 2021, and three months ended March 31, 2020, were less than 1%. The geographic location of our net sales is derived from the destination to which we ship the product.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Net loss per share &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic loss per share is computed by dividing net loss available to common stockholders by the weighted average number of shares of common stock outstanding during the period, excluding the effects of any potentially dilutive securities. Diluted loss per share gives effect to all dilutive potential shares of common stock outstanding during the period. Dilutive potential shares of common stock consist of incremental shares upon the exercise of stock options, warrants and convertible securities, unless the effect would be anti-dilutive.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The following table presents a reconciliation of basic and diluted loss per share computations (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.597%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.053%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.876%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.056%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Numerator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net loss&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,642)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(541)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Denominator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic weighted average shares of common stock outstanding *&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,612&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;* Shares outstanding for prior periods have been restated for the 1-for-5 stock split effective June 11, 2020.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As a result of the net loss we incurred for the three months ended March 31, 2021, options, restricted share units, warrants and convertible securities representing approximately 79&#160;thousand, 2&#160;thousand, 106&#160;thousand and 519&#160;thousand shares of common stock, respectively, were excluded from the basic loss per share calculation, because their inclusion would have been anti-dilutive.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As a result of the net loss we incurred for the three months ended March 31, 2020, options and restricted share units representing approximately 0.3&#160;thousand and 1&#160;thousand shares of common stock, respectively, and convertible securities representing approximately 452&#160;thousand shares of common stock were excluded from the basic loss per share calculation as their inclusion would have been anti-dilutive. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Product warranties&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Through March&#160;31, 2016, we warranted finished goods against defects in material and workmanship under normal use and service for periods generally between &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDA0OQ_e66bff4c-194e-44bc-a3ef-eb779268857d"&gt;one&lt;/span&gt; and five years. Beginning April&#160;1, 2016, we warrant our commercial TLEDs, the troffer luminaires, and certain Globe Lights for a period of ten years (excluding RedCap&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7.8pt;font-style:italic;font-weight:400;line-height:120%;position:relative;top:-4.2pt;vertical-align:baseline"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; and our Battery Backup TLEDs), and all other LED products for five years per the Terms and Conditions outlined on our website. Beginning in October 2019, TLEDs (excluding RedCap&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;) are primarily warranted for ten years, certain D-Series lamps are warranted for either ten years or five years based on the customer&#x2019;s choice at time of purchase, and the warranty for all of our other products is five years. Warranty settlement costs consist of actual amounts expensed for warranty, which are largely a result of the cost of replacement products provided to our customers. A liability for the estimated future costs under product warranties is maintained for products under warranty based on the actual claims incurred to date and the estimated nature, frequency, and costs of future claims. These estimates are inherently uncertain and changes to our historical or projected experience may cause material changes to our warranty reserves in the future. We continuously review the assumptions related to the adequacy of our warranty reserve, including product failure rates, and make adjustments to the existing warranty liability when there are changes to these estimates or the underlying replacement product costs, or the warranty period expires. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes warranty activity for the periods presented (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:74.425%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.761%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.764%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;227&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;195&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Warranty accruals for current period sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Adjustments to existing warranties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;In kind settlements made during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(19)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Accrued warranty reserve at end of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Financial Instruments&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In January 2020, we completed a registered direct offering for the sale of 688,360 shares of our common stock to certain institutional investors, at a purchase price of $3.37 per share. We also sold, to the same institutional investors, warrants to purchase up to 688,360 shares of common stock at an exercise price of $3.37 per share in a concurrent private placement for a purchase price of $0.625 per warrant. We paid the placement agent commissions of $193&#160;thousand plus $50&#160;thousand in expenses in connection with the registered direct offering and the concurrent private placement and we also paid legal, accounting and other fees of $231&#160;thousand related to the offering. Total offering costs of $510&#160;thousand have been presented as a reduction of additional paid-in capital and have been netted within equity in the Condensed Consolidated Balance Sheet as of December&#160;31, 2020. In addition, we issued warrants to the placement agent to purchase up to 48,185 shares of common stock at an exercise price of $4.99 per share. Net proceeds to us from the sale of common stock and warrants (the &#x201c;January 2020 Equity Offering&#x201d;) were approximately $2.3 million. In accordance with the terms of the Iliad Note (as defined below in Note 7, &#x201c;Debt&#x201d;), 10% of the gross proceeds from the January 2020 Equity Offering ($275&#160;thousand) were used to make payments on the Iliad Note, of which $226&#160;thousand went towards the outstanding principal amount and the balance to interest.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Warrants to purchase an aggregate of 310,860 shares remain outstanding at March&#160;31, 2021 with a weighted average exercise price of $3.59 per share. The exercise of warrants could provide us with cash proceeds of up to $1.1 million in the aggregate. During the three months ended March 31, 2021, 156,446 warrants were exercised resulting in total proceeds of $527 thousand. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Due to a potential cash settlement upon occurrence of a fundamental transaction within the warrant agreement, the warrants were initially classified as liabilities, as opposed to equity, and were recorded at their fair values at each balance sheet date for the first three quarters of 2020. During December 2020, the warrant holders agreed to a modification of the terms of their warrants which removed the potential cash settlement option upon the occurrence of a fundamental transaction. As such, during the fourth quarter of 2020, the warrant liability was reclassified into equity and the warrants are no longer subject to re-measurement at each balance sheet date. Please also refer to Note 9, &#x201c;Stockholders&#x2019; Equity&#x201d;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;text-decoration:underline"&gt;Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The fair value hierarchy prioritizes the inputs to valuation techniques used to measure fair value, giving the highest priority to unadjusted quoted prices in active markets for identical assets or liabilities (Level 1 measurements) and the lowest priority to unobservable inputs (Level 3 measurements). The three levels of the fair value hierarchy are described below. We classify the inputs used to measure fair value into the following hierarchy:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.509%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:89.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Unadjusted quoted prices in active markets for identical assets or liabilities.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Unadjusted quoted prices in active markets for similar assets or liabilities, or unadjusted quoted prices for identical or similar assets or liabilities in markets that are not active, or inputs other than quoted prices that are observable for the asset or liability.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Unobservable inputs for the asset or liability.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The following table provides a summary of the financial assets and liabilities measured at fair value on a recurring basis as of March 31, 2020 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.221%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.912%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.151%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.770%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.151%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.770%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.151%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.774%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair Value Measurements at March&#160;31, 2020 Using&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:17pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Balance as of&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quoted Prices in Active Markets for Identical Assets&lt;br/&gt;&#160;(Level 1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Other Observable Inputs &lt;br/&gt;(Level 2)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Unobservable Inputs&lt;br/&gt;&#160;(Level 3)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:23pt"&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Description&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Warrant liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The carrying amounts of certain financial instruments including cash, accounts receivable, accounts payable, and accrued liabilities approximate fair value due to their short maturities. Based on borrowing rates currently available to us for loans with similar terms, the carrying value of borrowings under our revolving credit facilities also approximates fair value.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;A financial instrument&#x2019;s level within the fair value hierarchy is based on the lowest level of any input that is significant to the fair value measurement. In determining the appropriate levels, we perform a detailed analysis of the assets and liabilities whose fair value is measured on a recurring basis. We review and reassess the fair value hierarchy classifications on a quarterly basis. Changes from one quarter to the next related to the observability of inputs in a fair value measurement may result in a reclassification between fair value hierarchy levels. There were no reclassifications for all periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The estimated fair value of warrants accounted for as liabilities, representing a level 3 fair value measure, was determined on the issuance date and subsequently marked to market at each financial reporting date. We use the Black-Scholes valuation model to value the warrant liabilities at fair value. The fair value is estimated using the expected volatility based on our historical volatility and is determined using probability weighted-average assumptions, when appropriate.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The following inputs were used at March 31, 2020:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.893%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.866%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.001%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.167%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.001%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.272%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Expected&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Risk-Free&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Expected&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Interest Rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Life&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Warrants with greater than one-year remaining term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;97.05%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;0.34% - 0.36%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;4.29 -  4.79 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;A roll-forward of fair value measurements using significant unobservable inputs (Level 3) for the warrants is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:79.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.270%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended March 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%"&gt;Balance January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Issuance of warrants, January 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;1,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Gain from change in fair value of warrants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;(873)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%"&gt;Balance March 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0NTU_e6e174d8-9b13-4b90-8970-595288d0de62">&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Basis of presentation&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The significant accounting policies of our Company, which are summarized below, are consistent with accounting principles generally accepted in the United States (&#x201c;U.S. GAAP&#x201d;) and reflect practices appropriate to the business in which we operate. Unless indicated otherwise, the information in the Notes to the Consolidated Financial Statements relates to our operations.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have prepared the accompanying financial data for the three months ended March&#160;31, 2021 and 2020 pursuant to the rules and regulations of the United States Securities and Exchange Commission. Certain information and footnote disclosures normally included in financial statements prepared in accordance with U.S. GAAP have been condensed or omitted pursuant to such rules and regulations. The accompanying financial data and information should be read in conjunction with our Annual Report on Form 10-K for the year ended December&#160;31, 2020 (&#x201c;2020 Annual Report&#x201d;). The Condensed Consolidated Balance Sheet as of December&#160;31, 2020 has been derived from the audited consolidated financial statements at that date but does not include all of the information and footnotes required by U.S. GAAP for complete financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the opinion of management, the accompanying condensed consolidated financial statements contain all normal and recurring adjustments necessary to present fairly our Condensed Consolidated Balance Sheets as of March&#160;31, 2021 and December&#160;31, 2020, Condensed Consolidated Statements of Operations for the three months ended March&#160;31, 2021 and 2020, Condensed Consolidated Statements of Comprehensive Loss for the three months ended March&#160;31, 2021 and 2020, Condensed Consolidated Statements of Changes in Stockholders&#x2019; Equity for the three months ended March&#160;31, 2021 and 2020, and Condensed Consolidated Statements of Cash Flows for the three months ended March&#160;31, 2021 and 2020.&lt;/span&gt;&lt;/div&gt;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:UseOfEstimates
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0NTY_45e5cd2c-2497-4cb9-b3ba-8754b3e3c101">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Use of estimates&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of financial statements in accordance with U.S. GAAP requires management to make estimates and assumptions that affect the amounts reported in our financial statements and accompanying notes. Management bases its estimates on historical experience and various other assumptions believed to be reasonable. Although these estimates are based on management&#x2019;s best knowledge of current events and actions that may impact us in the future, actual results may vary from the estimates. Estimates include, but are not limited to, the establishment of reserves for accounts receivable, sales returns, inventory obsolescence and warranty claims; the useful lives of property and equipment; valuation allowance for net deferred taxes; the cost and offsetting income related to sub-leased property; and stock-based compensation. In addition, estimates and assumptions associated with the determination of the fair value of financial instruments and evaluation of long-lived assets for impairment requires considerable judgment. Actual results could differ from those estimates and such differences could be material.&lt;/span&gt;&lt;/div&gt;</us-gaap:UseOfEstimates>
    <us-gaap:ConcentrationRiskCreditRisk
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM0Mw_bc5d26f1-8509-4bda-8d79-722e328dad1f">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Certain risks and concentrations&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have certain customers whose net sales individually represented 10% or more of our total net sales, or whose net trade accounts receivable balance individually represented 10% or more of our total net trade accounts receivable; we have certain suppliers, which individually represent 10% or more of our total purchases, or whose trade accounts payable balance individually represented 10% or more of our total trade accounts payable balance, as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the three months ended March 31, 2021, sales to our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 50% and 11% of net sales, respectively. When sales to our primary distributor for the U.S. Navy are combined with sales to shipbuilders for the U.S. Navy, total net sales of products for the U.S. Navy comprised approximately 57% of net sales for the same period. For the three months ended March 31, 2020, sales to our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 38% and 15% of net sales, respectively. When sales to our primary distributor for the U.S. Navy are combined with sales to shipbuilders for the U.S. Navy, total net sales of products for the U.S. Navy comprised approximately 46% of net sales for the same period.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 45% and 16% of net trade accounts receivable, respectively, at March&#160;31, 2021. At December 31, 2020, our primary distributor to the U.S. Navy accounted for 28% of our net trade accounts receivable and a shipbuilder for the U.S. Navy accounted for 21% of our net trade accounts receivable. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;One offshore supplier accounted for approximately 26% and 22%, respectively, of our total expenditures for the three months ended March 31, 2021 and March&#160;31, 2020. At March&#160;31, 2021, this same offshore supplier and one domestic supplier accounted for approximately 39% and 10% of our trade accounts payable balance, respectively. At December 31, 2020 this same offshore supplier accounted for approximately 44% of our trade accounts payable balance.&lt;/span&gt;&lt;/div&gt;</us-gaap:ConcentrationRiskCreditRisk>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i4ac3ca3389b54e11881bc600bc76e5c1_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzE0NA_0087fabf-8458-4af4-9791-8b1d3af8314e"
      unitRef="number">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i4ac3ca3389b54e11881bc600bc76e5c1_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI1MQ_ee6148bf-8fa7-43ad-85d3-3c55a13e24b7"
      unitRef="number">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i4ac3ca3389b54e11881bc600bc76e5c1_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzM2Mg_ee6148bf-8fa7-43ad-85d3-3c55a13e24b7"
      unitRef="number">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i4ac3ca3389b54e11881bc600bc76e5c1_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzQ2Mg_ee6148bf-8fa7-43ad-85d3-3c55a13e24b7"
      unitRef="number">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="if5f69b88c1e94812b8d32051e6bf5bad_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzY3NA_a04a648e-38d6-478e-979a-db436b532858"
      unitRef="number">0.50</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i8fd89665f12e4c79be1f16a4975db0e9_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzY4MQ_e15adaa6-1b10-4aa7-a9cf-2301f3e2e04a"
      unitRef="number">0.11</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i016aca80ed34490fb5902c84d4cdb20c_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzg5Nw_81fc217a-a946-40a7-951d-a12330cbd745"
      unitRef="number">0.57</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ide94a6dc06b94121b00d007ae8029a9c_D20200101-20200331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfNDEwNw_9fbad538-dd51-463d-9618-18fee93ef48c"
      unitRef="number">0.38</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i98413ba4172f400fb13a4e55b3dd9ece_D20200101-20200331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfNDExMQ_4e3a37a5-2840-4332-b888-dadfc60b75e6"
      unitRef="number">0.15</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ic0084796b5f94e29804958a4753bf87d_D20200101-20200331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM2NQ_11aa29df-cd47-44b1-a970-73a100ba2022"
      unitRef="number">0.46</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i9b8c850c315e4629b561719f49269baa_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfNTI1Mg_79a03a7a-7a95-47b3-9b52-27fe14eb78df"
      unitRef="number">0.45</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i404f93dec6d14c99986fb1a63ef2adaf_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY2NDM1Nw_417a0e09-51f9-438e-a870-b7490bba80bd"
      unitRef="number">0.16</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i027584a13e074a8b955c05d56697a12d_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM1NQ_c21deb7f-5426-4c36-97df-39e394e96541"
      unitRef="number">0.28</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i24390d1b839c498da16d408831cd0cdb_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM2MA_2395a0f0-b240-4fea-8ca7-3a01f5a3a2e7"
      unitRef="number">0.21</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i31b6c2c6322246a4beda0a0731370684_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY2NDYwOQ_cc5bbcc6-0e63-4831-8ff6-88b9c6dfdd74"
      unitRef="number">0.26</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i339a38526a964beca9f1eb7f0d7d7f75_D20200101-20200331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY2NDYyMA_6e5c8a53-e468-4310-a48a-d7be09ff03e9"
      unitRef="number">0.22</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i141e4c5e274f4baa94b6e62a525c3b7c_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY2NDQ1OQ_ca907fdb-3e88-4bfa-aa3b-293be76e2b9a"
      unitRef="number">0.39</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i8d004affba704c7ca37fa06e3ba8892f_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY2NDQ2NQ_6c3be0ca-7335-4aa5-b9e7-e3d8646b1492"
      unitRef="number">0.10</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="ie020b072c1514c4ea7ff082dae9ba76f_D20200101-20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM1MA_b472e83d-9ccc-434b-834b-faaeb9733979"
      unitRef="number">0.44</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0Njc_a8276037-3ab8-4310-9392-6ae4114b1705">Recent accounting pronouncements&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In June 2016, the Financial Accounting Standards Board issued Accounting Standard Update No. 2016-13, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments&lt;/span&gt;, which significantly changes the accounting for credit losses on instruments within its scope. The new guidance introduces an approach based on expected losses to estimate credit losses on certain financial instruments, including trade receivables, and requires an entity to recognize an allowance based on its estimate of expected credit losses rather than incurred losses. For smaller reporting companies, this standard will be effective for interim and annual periods starting after December 15, 2022 and will generally require adoption on a modified retrospective basis. We are in the process of evaluating the impact of the standard.</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:RevenueRecognitionPolicyTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0ODk_2ee229ad-ca47-40ac-a195-56d915c3be51">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Revenue&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Net sales include revenues from sales of products and shipping and handling charges, net of estimates for product returns. Revenue is measured at the amount of consideration we expect to receive in exchange for the transferred products. We recognize revenue at the point in time when we transfer the promised products to the customer and the customer obtains control over the products. Distributors&#x2019; obligations to us are not contingent upon the resale of our products. We recognize revenue for shipping and handling charges at the time the goods are shipped to the customer, and the costs of outbound &lt;/span&gt;&lt;/div&gt;freight are included in cost of sales. We provide for product returns based on historical return rates. While we incur costs for sales commissions to our sales employees and outside agents, we recognize commission costs concurrent with the related revenue, as the amortization period is less than one year. We do not incur any other incremental costs to obtain contracts with our customers. Our product warranties are assurance-type warranties, which promise the customer that the products are as specified in the contract. Therefore, the product warranties are not a separate performance obligation and are accounted for as described below. Sales taxes assessed by governmental authorities are accounted for on a net basis and are excluded from net sales.</us-gaap:RevenueRecognitionPolicyTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0NDY_0c3370a3-4716-44b1-9dc2-7e5efbf16a62">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table provides a disaggregation of product net sales for the periods presented (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.975%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.912%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.063%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Net sales:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Commercial&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;913&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,736&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;MMM products&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,047&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total net sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,637&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:Revenues
      contextRef="i18a690ed9a9a41458d0feffe21f8dcca_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmQzZmZlZWE3NjdhMzQ2ZTk5YmE2NDA0YzM0NTJmMTRmL3RhYmxlcmFuZ2U6ZDNmZmVlYTc2N2EzNDZlOTliYTY0MDRjMzQ1MmYxNGZfMy0xLTEtMS0w_0da2d24f-45c4-4a6a-b843-90a41cb62189"
      unitRef="usd">913000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="ic4682245caf84f909e5aa693dcb86844_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmQzZmZlZWE3NjdhMzQ2ZTk5YmE2NDA0YzM0NTJmMTRmL3RhYmxlcmFuZ2U6ZDNmZmVlYTc2N2EzNDZlOTliYTY0MDRjMzQ1MmYxNGZfMy0zLTEtMS0w_20465bf4-f09c-4420-8c0d-feb93d6fff29"
      unitRef="usd">1736000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i9610cf42043f41e5b8ebba87cec3b68e_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmQzZmZlZWE3NjdhMzQ2ZTk5YmE2NDA0YzM0NTJmMTRmL3RhYmxlcmFuZ2U6ZDNmZmVlYTc2N2EzNDZlOTliYTY0MDRjMzQ1MmYxNGZfNC0xLTEtMS0w_f85e933a-d5a2-452a-b766-88c12b1d2e1b"
      unitRef="usd">1724000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="iea035adca85b40d38d1857cd4a7d3ddd_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmQzZmZlZWE3NjdhMzQ2ZTk5YmE2NDA0YzM0NTJmMTRmL3RhYmxlcmFuZ2U6ZDNmZmVlYTc2N2EzNDZlOTliYTY0MDRjMzQ1MmYxNGZfNC0zLTEtMS0w_fa223077-ce72-4c05-8065-8e9bc2e3b66a"
      unitRef="usd">2047000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmQzZmZlZWE3NjdhMzQ2ZTk5YmE2NDA0YzM0NTJmMTRmL3RhYmxlcmFuZ2U6ZDNmZmVlYTc2N2EzNDZlOTliYTY0MDRjMzQ1MmYxNGZfNS0xLTEtMS0w_18e6e468-7200-43c4-9ff8-35bb38d74ae0"
      unitRef="usd">2637000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmQzZmZlZWE3NjdhMzQ2ZTk5YmE2NDA0YzM0NTJmMTRmL3RhYmxlcmFuZ2U6ZDNmZmVlYTc2N2EzNDZlOTliYTY0MDRjMzQ1MmYxNGZfNS0zLTEtMS0w_304e114d-11ea-4891-aa38-fd161bfe663a"
      unitRef="usd">3783000</us-gaap:Revenues>
    <us-gaap:TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0NjI_8afdd5de-de38-4be3-8699-5bf3ee600fe2">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Accounts Receivable&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Our trade accounts receivable consist of amounts billed to and currently due from customers. Our customers are currently concentrated in the United States. In the normal course of business, we extend unsecured credit to our customers related to the sale of our products. Credit is extended to customers based on an evaluation of the customer&#x2019;s financial condition and the amounts due are stated at their estimated net realizable value. We utilize an account receivable insurance program with a high credit worthy insurance company where we have the large majority of the accounts receivable insured with a portion of self-retention. This third party also provides creditworthiness ratings and metrics that significantly assist us in evaluating the creditworthiness of both existing and new customers. We maintain allowances for sales returns and doubtful accounts receivable to provide for the estimated number of accounts receivable that will not be collected. The allowance is based on an assessment of customer creditworthiness and historical payment experience, the age of outstanding receivables, and performance guarantees to the extent applicable. Past due amounts are written off when our internal collection efforts have been unsuccessful, and payments subsequently received on such receivables are credited to the allowance for doubtful accounts. We do not generally require collateral from our customers.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Our standard payment terms with customers are net 30 days from the date of shipment, and we do not generally offer extended payment terms to our customers, but exceptions are made in some cases to certain customers or with particular orders. Accordingly, we do not adjust trade accounts receivable for the effects of financing, as we expect the period between the transfer of product to the customer and the receipt of payment from the customer to be in line with our standard payment terms.&lt;/span&gt;&lt;/div&gt;</us-gaap:TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="i01bd9c8c1eaf40bc95a4831475c6065c_D20200101-20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA4NTQ_6c1fc24d-36fd-4393-b009-7b81284dfb79"
      unitRef="number">0.01</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="if4463cd7b06c441198a42045a52ce68c_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA4NTQ_a7f17b50-6c21-42bc-b20d-8d45162a3ee5"
      unitRef="number">0.01</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:EarningsPerSharePolicyTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg1MDM_a8f5caef-edc4-4fac-849c-1e200f3b5263">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Net loss per share &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic loss per share is computed by dividing net loss available to common stockholders by the weighted average number of shares of common stock outstanding during the period, excluding the effects of any potentially dilutive securities. Diluted loss per share gives effect to all dilutive potential shares of common stock outstanding during the period. Dilutive potential shares of common stock consist of incremental shares upon the exercise of stock options, warrants and convertible securities, unless the effect would be anti-dilutive.&lt;/span&gt;&lt;/div&gt;</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0OTk_79d032d3-7c09-4cb8-b082-c6c43ba70f98">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The following table presents a reconciliation of basic and diluted loss per share computations (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.597%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:73.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.053%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.876%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:11.056%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Numerator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net loss&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,642)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(541)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Denominator:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic weighted average shares of common stock outstanding *&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,612&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,086&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:6.75pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;&#160;* Shares outstanding for prior periods have been restated for the 1-for-5 stock split effective June 11, 2020.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjczYmM2NjY3NmJiZjRiOGI5NWI2NWU5OTAxZmJmOWFiL3RhYmxlcmFuZ2U6NzNiYzY2Njc2YmJmNGI4Yjk1YjY1ZTk5MDFmYmY5YWJfMy0xLTEtMS0w_5ba9cb4d-28f0-45c2-8e9c-91686da9752b"
      unitRef="usd">-1642000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjczYmM2NjY3NmJiZjRiOGI5NWI2NWU5OTAxZmJmOWFiL3RhYmxlcmFuZ2U6NzNiYzY2Njc2YmJmNGI4Yjk1YjY1ZTk5MDFmYmY5YWJfMy0zLTEtMS0w_16aa4b76-c0fe-40de-8ae1-445de93fe5f6"
      unitRef="usd">-541000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjczYmM2NjY3NmJiZjRiOGI5NWI2NWU5OTAxZmJmOWFiL3RhYmxlcmFuZ2U6NzNiYzY2Njc2YmJmNGI4Yjk1YjY1ZTk5MDFmYmY5YWJfNi0xLTEtMS0w_3cbaaf9f-322d-4c88-83fe-3532bbaf5493"
      unitRef="shares">3612000</us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted>
    <us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjczYmM2NjY3NmJiZjRiOGI5NWI2NWU5OTAxZmJmOWFiL3RhYmxlcmFuZ2U6NzNiYzY2Njc2YmJmNGI4Yjk1YjY1ZTk5MDFmYmY5YWJfNi0zLTEtMS0w_9fc7a6d2-29ce-460a-8579-8a355d074894"
      unitRef="shares">3086000</us-gaap:WeightedAverageNumberOfShareOutstandingBasicAndDiluted>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i23f283c771fb442cbcbc4e3518a209e7_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTE3OTg_b6627c13-ec25-4cd3-a7a1-66a3dde6ea30"
      unitRef="shares">79000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTE4MDI_89afcc0a-68e4-4446-9995-9af9197abf56"
      unitRef="shares">2000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i07e159ff53c64c0c9211a8bafd5d974c_D20210101-20210331"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTE4MDY_c63d2873-1309-4c2b-ae11-d438aa27e761"
      unitRef="shares">106000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="id654613ac3e14a678d4ce7ce503bdd1c_D20210101-20210331"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTE4MTM_84b05f7c-1663-4195-ab31-6fe7db9b7dea"
      unitRef="shares">519000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i26a92c18c3f5476183cd1d14b1c8017b_D20200101-20200331"
      decimals="-2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTIzNzI_f8103a8c-dee8-42bb-8efd-4ef09935d28e"
      unitRef="shares">300</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i8dce9257f3f24cc597b70575ad006ab1_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MTQzNA_d4c2b7b7-c888-4a6e-8af4-1a11c469a186"
      unitRef="shares">1000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="i156a82c4ce954d63bb4ce38aba1d7b32_D20200101-20200331"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTI0Njc_fef7b065-87f9-4bb3-9945-775d96f34f4b"
      unitRef="shares">452000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:StandardProductWarrantyPolicy
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0MzQ_436fc808-f243-4c6a-adf8-8088ea66f850">Product warranties&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Through March&#160;31, 2016, we warranted finished goods against defects in material and workmanship under normal use and service for periods generally between &lt;span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDA0OQ_e66bff4c-194e-44bc-a3ef-eb779268857d"&gt;one&lt;/span&gt; and five years. Beginning April&#160;1, 2016, we warrant our commercial TLEDs, the troffer luminaires, and certain Globe Lights for a period of ten years (excluding RedCap&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7.8pt;font-style:italic;font-weight:400;line-height:120%;position:relative;top:-4.2pt;vertical-align:baseline"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; and our Battery Backup TLEDs), and all other LED products for five years per the Terms and Conditions outlined on our website. Beginning in October 2019, TLEDs (excluding RedCap&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"&gt;&#xae;&lt;/span&gt;) are primarily warranted for ten years, certain D-Series lamps are warranted for either ten years or five years based on the customer&#x2019;s choice at time of purchase, and the warranty for all of our other products is five years. Warranty settlement costs consist of actual amounts expensed for warranty, which are largely a result of the cost of replacement products provided to our customers. A liability for the estimated future costs under product warranties is maintained for products under warranty based on the actual claims incurred to date and the estimated nature, frequency, and costs of future claims. These estimates are inherently uncertain and changes to our historical or projected experience may cause material changes to our warranty reserves in the future. We continuously review the assumptions related to the adequacy of our warranty reserve, including product failure rates, and make adjustments to the existing warranty liability when there are changes to these estimates or the underlying replacement product costs, or the warranty period expires.</us-gaap:StandardProductWarrantyPolicy>
    <efoi:StandardProductWarrantyNumberofYears
      contextRef="i254d386828124dd682d8335070f16083_D20160101-20160331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDA1Nw_131a740a-f556-4f62-8cec-96c659fc5fb4">P5Y</efoi:StandardProductWarrantyNumberofYears>
    <efoi:StandardProductWarrantyNumberofYears
      contextRef="ia0662236cd9941438e3fb2c0b78a0713_D20160401-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDE3NQ_6a95410f-2a17-4b49-896e-b8b2e80a25a8">P10Y</efoi:StandardProductWarrantyNumberofYears>
    <efoi:StandardProductWarrantyNumberofYears
      contextRef="i51e6dde065b142a79d23bc3955353ce9_D20160401-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDI2MA_62ffc523-d01f-4f45-ac8e-a0c11f1c09f5">P5Y</efoi:StandardProductWarrantyNumberofYears>
    <efoi:StandardProductWarrantyNumberofYears
      contextRef="icd6f5ef38d7b497a9145ce075a0725c3_D20191001-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDM5OQ_cbfd2c11-c120-4f03-9272-0a8f14ac948a">P10Y</efoi:StandardProductWarrantyNumberofYears>
    <efoi:StandardProductWarrantyNumberofYears
      contextRef="i8e50ea1232c74a3a8dc19a60549d605f_D20191001-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDQ1Mg_34d9fe17-0ea7-4592-bd9d-4cd8db374133">P10Y</efoi:StandardProductWarrantyNumberofYears>
    <efoi:StandardProductWarrantyNumberofYears
      contextRef="i1295814c41ea47abb4b46801e022a13b_D20191001-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDQ1OQ_58cc31f4-1d50-4466-816b-47e4643f81da">P5Y</efoi:StandardProductWarrantyNumberofYears>
    <efoi:StandardProductWarrantyNumberofYears
      contextRef="i23ab18c4dc8e48cf805f19a0b7845a7e_D20191001-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDU2NQ_02a82b62-75bc-40af-938c-4fdfe9b05d5c">P5Y</efoi:StandardProductWarrantyNumberofYears>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0NjQ_e140c6c4-be2f-4462-9799-107aad051d37">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes warranty activity for the periods presented (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:74.425%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.761%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.764%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;227&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;195&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Warranty accruals for current period sales&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Adjustments to existing warranties&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;In kind settlements made during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(19)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Accrued warranty reserve at end of period&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;239&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfMi0xLTEtMS0w_1ea79301-5011-4f40-8b86-c0ae2e6028ee"
      unitRef="usd">227000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="ia14618e080534548a2781f9ad7ec8f84_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfMi0zLTEtMS0w_40c48cb7-6cb3-4b01-8f24-56df7584c5ef"
      unitRef="usd">195000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfMy0xLTEtMS0w_c9f8e9db-51bd-4304-acf8-5273b9bba186"
      unitRef="usd">17000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfMy0zLTEtMS0w_16076aab-d8ca-42ed-89dd-33ec8556fb72"
      unitRef="usd">7000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfNC0xLTEtMS0w_8a90ddc1-9820-4374-abb9-5f21d4f28e7b"
      unitRef="usd">14000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfNC0zLTEtMS0w_3cfc2a15-9d55-4576-b112-1e0c271e1b10"
      unitRef="usd">44000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfNS0xLTEtMS0w_f56c2c01-b054-4cff-83a3-2597881e2f4a"
      unitRef="usd">19000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfNS0zLTEtMS0w_ebb9e6a7-529d-4c6b-8a3c-3a86977d8c53"
      unitRef="usd">6000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:ProductWarrantyAccrual
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfNi0xLTEtMS0w_a8fd8fb0-93f1-4ef4-bd01-db5fe92b7173"
      unitRef="usd">239000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjU2MzE2YmYyOGFkYzRhZjNiM2U4ODY0NmY4MzUyYWY1L3RhYmxlcmFuZ2U6NTYzMTZiZjI4YWRjNGFmM2IzZTg4NjQ2ZjgzNTJhZjVfNi0zLTEtMS0w_fbd655cf-5368-4f88-9759-ebdec4f766cb"
      unitRef="usd">240000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM0NA_ce4f60cc-e3c4-46f8-83f1-05c0cfe248a3">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Financial Instruments&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In January 2020, we completed a registered direct offering for the sale of 688,360 shares of our common stock to certain institutional investors, at a purchase price of $3.37 per share. We also sold, to the same institutional investors, warrants to purchase up to 688,360 shares of common stock at an exercise price of $3.37 per share in a concurrent private placement for a purchase price of $0.625 per warrant. We paid the placement agent commissions of $193&#160;thousand plus $50&#160;thousand in expenses in connection with the registered direct offering and the concurrent private placement and we also paid legal, accounting and other fees of $231&#160;thousand related to the offering. Total offering costs of $510&#160;thousand have been presented as a reduction of additional paid-in capital and have been netted within equity in the Condensed Consolidated Balance Sheet as of December&#160;31, 2020. In addition, we issued warrants to the placement agent to purchase up to 48,185 shares of common stock at an exercise price of $4.99 per share. Net proceeds to us from the sale of common stock and warrants (the &#x201c;January 2020 Equity Offering&#x201d;) were approximately $2.3 million. In accordance with the terms of the Iliad Note (as defined below in Note 7, &#x201c;Debt&#x201d;), 10% of the gross proceeds from the January 2020 Equity Offering ($275&#160;thousand) were used to make payments on the Iliad Note, of which $226&#160;thousand went towards the outstanding principal amount and the balance to interest.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Warrants to purchase an aggregate of 310,860 shares remain outstanding at March&#160;31, 2021 with a weighted average exercise price of $3.59 per share. The exercise of warrants could provide us with cash proceeds of up to $1.1 million in the aggregate. During the three months ended March 31, 2021, 156,446 warrants were exercised resulting in total proceeds of $527 thousand. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Due to a potential cash settlement upon occurrence of a fundamental transaction within the warrant agreement, the warrants were initially classified as liabilities, as opposed to equity, and were recorded at their fair values at each balance sheet date for the first three quarters of 2020. During December 2020, the warrant holders agreed to a modification of the terms of their warrants which removed the potential cash settlement option upon the occurrence of a fundamental transaction. As such, during the fourth quarter of 2020, the warrant liability was reclassified into equity and the warrants are no longer subject to re-measurement at each balance sheet date. Please also refer to Note 9, &#x201c;Stockholders&#x2019; Equity&#x201d;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;text-decoration:underline"&gt;Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The fair value hierarchy prioritizes the inputs to valuation techniques used to measure fair value, giving the highest priority to unadjusted quoted prices in active markets for identical assets or liabilities (Level 1 measurements) and the lowest priority to unobservable inputs (Level 3 measurements). The three levels of the fair value hierarchy are described below. We classify the inputs used to measure fair value into the following hierarchy:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:8.509%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:89.291%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Unadjusted quoted prices in active markets for identical assets or liabilities.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Unadjusted quoted prices in active markets for similar assets or liabilities, or unadjusted quoted prices for identical or similar assets or liabilities in markets that are not active, or inputs other than quoted prices that are observable for the asset or liability.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Unobservable inputs for the asset or liability.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The carrying amounts of certain financial instruments including cash, accounts receivable, accounts payable, and accrued liabilities approximate fair value due to their short maturities. Based on borrowing rates currently available to us for loans with similar terms, the carrying value of borrowings under our revolving credit facilities also approximates fair value.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;A financial instrument&#x2019;s level within the fair value hierarchy is based on the lowest level of any input that is significant to the fair value measurement. In determining the appropriate levels, we perform a detailed analysis of the assets and liabilities whose fair value is measured on a recurring basis. We review and reassess the fair value hierarchy classifications on a quarterly basis. Changes from one quarter to the next related to the observability of inputs in a fair value measurement may result in a reclassification between fair value hierarchy levels. There were no reclassifications for all periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The estimated fair value of warrants accounted for as liabilities, representing a level 3 fair value measure, was determined on the issuance date and subsequently marked to market at each financial reporting date. We use the Black-Scholes valuation model to value the warrant liabilities at fair value. The fair value is estimated using the expected volatility based on our historical volatility and is determined using probability weighted-average assumptions, when appropriate.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction
      contextRef="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDcxNQ_76495a5d-f9dd-432e-97eb-c92216e92235"
      unitRef="shares">688360</us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction>
    <us-gaap:SaleOfStockPricePerShare
      contextRef="i80309835f493449a847d541559d6ff1d_I20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzg0ODI5MDczNDU5Nw_52bb438d-a122-4806-baca-53d5f85f3ac8"
      unitRef="usdPerShare">3.37</us-gaap:SaleOfStockPricePerShare>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTQ3ODA_14449526-8671-460a-8342-85de02dc0983"
      unitRef="shares">688360</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i80309835f493449a847d541559d6ff1d_I20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTQ4MzA_5fea7f6a-4f2e-415b-a0a0-46a58c44b4bf"
      unitRef="usdPerShare">3.37</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ClassOfWarrantOrRightWarrantsIssuedPricePerShare
      contextRef="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTQ5MDE_e3681874-defe-4788-88d7-f7cfbb8f46d7"
      unitRef="usdPerShare">0.625</efoi:ClassOfWarrantOrRightWarrantsIssuedPricePerShare>
    <efoi:PaymentsForPlacementAgentCommissions
      contextRef="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTQ5NjA_6b6dc465-57a8-4072-b6fa-232e0553f340"
      unitRef="usd">193000</efoi:PaymentsForPlacementAgentCommissions>
    <efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement
      contextRef="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTQ5Njg_289e5823-dd3f-4790-adca-06e263362ff5"
      unitRef="usd">50000</efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement>
    <efoi:PaymentsForClearingFees
      contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTUxMjM_7ca76c60-ab13-4792-831a-97b9c1f91164"
      unitRef="usd">231000</efoi:PaymentsForClearingFees>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="i00eb0670d1e149a2a10c5ce329bb1fa2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1NDgwNA_6219d965-8ef4-40ac-9f58-f0ce8512cda9"
      unitRef="usd">510000</us-gaap:PaymentsOfStockIssuanceCosts>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU0MjE_60fa2ab7-e9a1-44e8-b6f9-f3b2eaf3090d"
      unitRef="shares">48185</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i3474f10caa984249abced513511bd9c0_I20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU0NzE_d70c0c0d-7bd1-4c56-bfdb-6767aabc32e4"
      unitRef="usdPerShare">4.99</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU2MDM_b1c8ee82-1725-4f4b-80b7-6b520d53ed99"
      unitRef="usd">2300000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <efoi:DebtInstrumentProceedsToBePaidToLenderPercent
      contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU2OTI_95316db5-aa73-47aa-b3b5-d92e384ec340"
      unitRef="number">0.10</efoi:DebtInstrumentProceedsToBePaidToLenderPercent>
    <efoi:DebtInstrumentProceedsToBePaidToLenderPercent
      contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU2OTI_af756bb9-067e-44d0-aad9-5450870d78a7"
      unitRef="number">0.10</efoi:DebtInstrumentProceedsToBePaidToLenderPercent>
    <us-gaap:ProceedsFromIssuanceOrSaleOfEquity
      contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU3NTU_e974408e-d05d-4340-8db9-368a4db9a8ab"
      unitRef="usd">275000</us-gaap:ProceedsFromIssuanceOrSaleOfEquity>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="i5b14b389eebc47d5bcc51f2dd4812ce8_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU4MTQ_d09d255f-39e9-4325-8f36-15ea69271622"
      unitRef="usd">226000</us-gaap:RepaymentsOfNotesPayable>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTU5MzA_a1b99d71-1a69-4166-a787-a72c2f31c7d3"
      unitRef="shares">310860</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTYwMDc_5e2fb288-9141-4cb1-b6f2-4a30d160a995"
      unitRef="usdPerShare">3.59</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <us-gaap:ProceedsFromIssuanceOfWarrants
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTYwOTE_8ecb14c5-7456-4175-94bb-faf759d28b15"
      unitRef="usd">1100000</us-gaap:ProceedsFromIssuanceOfWarrants>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTYxMjc_5d8f0438-74f8-408b-af09-3fa1e6c31fe2"
      unitRef="shares">156446</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised>
    <us-gaap:ProceedsFromWarrantExercises
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTYxODU_c5217cd1-c5bf-462f-860c-b01fd7eb2850"
      unitRef="usd">527000</us-gaap:ProceedsFromWarrantExercises>
    <us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM0NQ_71c9fe84-4b9e-43cb-a309-ae892c9a4e92">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The following table provides a summary of the financial assets and liabilities measured at fair value on a recurring basis as of March 31, 2020 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:20.221%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:10.912%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.151%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.770%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.151%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.770%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.151%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:19.774%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair Value Measurements at March&#160;31, 2020 Using&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:17pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Balance as of&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quoted Prices in Active Markets for Identical Assets&lt;br/&gt;&#160;(Level 1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Other Observable Inputs &lt;br/&gt;(Level 2)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Unobservable Inputs&lt;br/&gt;&#160;(Level 3)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:23pt"&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Description&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Warrant liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock>
    <us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent
      contextRef="i4de7feba86f4411e8431d327acf726a6_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmE4MTNlNzcyYTBjNzQ4MDBhNThjZTNlZDNlYzI3OWZiL3RhYmxlcmFuZ2U6YTgxM2U3NzJhMGM3NDgwMGE1OGNlM2VkM2VjMjc5ZmJfMy0xLTEtMS0zMTQ2_b9b6321f-909a-4424-a9c2-0688746b389b"
      unitRef="usd">763000</us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent>
    <us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent
      contextRef="i204bf87cc54142adb41b78ecb6f6c2ff_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmE4MTNlNzcyYTBjNzQ4MDBhNThjZTNlZDNlYzI3OWZiL3RhYmxlcmFuZ2U6YTgxM2U3NzJhMGM3NDgwMGE1OGNlM2VkM2VjMjc5ZmJfMy0zLTEtMS0zMTQ4_417fe6c3-5dcf-4a5e-b03c-9a8ec0aff2ec"
      unitRef="usd">0</us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent>
    <us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent
      contextRef="i26193b3fb7204cbba2c9cccc40d0a8bd_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmE4MTNlNzcyYTBjNzQ4MDBhNThjZTNlZDNlYzI3OWZiL3RhYmxlcmFuZ2U6YTgxM2U3NzJhMGM3NDgwMGE1OGNlM2VkM2VjMjc5ZmJfMy01LTEtMS0zMTUw_5d27d51d-ecf4-4b06-89a8-c8d00f2aef09"
      unitRef="usd">0</us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent>
    <us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent
      contextRef="iab487819a6de4c7eab2a54b9565d76f1_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOmE4MTNlNzcyYTBjNzQ4MDBhNThjZTNlZDNlYzI3OWZiL3RhYmxlcmFuZ2U6YTgxM2U3NzJhMGM3NDgwMGE1OGNlM2VkM2VjMjc5ZmJfMy03LTEtMS0zMTUy_495d5b2f-c980-4b03-9687-0065acfa11b6"
      unitRef="usd">763000</us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent>
    <us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMzI5ODUzNDkyMDM0Ng_5a99672a-707d-4942-8a21-91210d0b0200">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The following inputs were used at March 31, 2020:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:42.893%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.866%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.001%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:16.167%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.001%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.272%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Expected&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Risk-Free&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Expected&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Interest Rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Life&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Warrants with greater than one-year remaining term&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;97.05%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;0.34% - 0.36%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;4.29 -  4.79 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i84aed75aecf64140a55d8201e6975d87_D20200101-20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjg4Yzc2ODM1NTFiNDQ2MzZhNGFiNWM4NDA5NzBhNTdmL3RhYmxlcmFuZ2U6ODhjNzY4MzU1MWI0NDYzNmE0YWI1Yzg0MDk3MGE1N2ZfMy0xLTEtMS0yMjYxL3RleHRyZWdpb246MWIxZjFjZTNiZjY3NGFjZjhjMTg2MTZhZDExOTU2NTZfNA_405a60e5-f9b1-48e9-b9b9-e067dbfa8dbf"
      unitRef="number">0.9705</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum
      contextRef="i84aed75aecf64140a55d8201e6975d87_D20200101-20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjg4Yzc2ODM1NTFiNDQ2MzZhNGFiNWM4NDA5NzBhNTdmL3RhYmxlcmFuZ2U6ODhjNzY4MzU1MWI0NDYzNmE0YWI1Yzg0MDk3MGE1N2ZfMy0zLTEtMS0yMjYxL3RleHRyZWdpb246YTc4YmMwZjQyNDBkNGRmZmE4YWQ3ZDYxOWRmNWVjOGVfNQ_7b83ff61-fd2a-4efc-89b4-5b5fd503a89e"
      unitRef="number">0.0034</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum
      contextRef="i84aed75aecf64140a55d8201e6975d87_D20200101-20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjg4Yzc2ODM1NTFiNDQ2MzZhNGFiNWM4NDA5NzBhNTdmL3RhYmxlcmFuZ2U6ODhjNzY4MzU1MWI0NDYzNmE0YWI1Yzg0MDk3MGE1N2ZfMy0zLTEtMS0yMjYxL3RleHRyZWdpb246YTc4YmMwZjQyNDBkNGRmZmE4YWQ3ZDYxOWRmNWVjOGVfMTA_3cdef7e7-7479-4590-aac3-165219f4f5d4"
      unitRef="number">0.0036</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="ic8d742260c744f68b31555bc2ef0ee31_D20200101-20200331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjg4Yzc2ODM1NTFiNDQ2MzZhNGFiNWM4NDA5NzBhNTdmL3RhYmxlcmFuZ2U6ODhjNzY4MzU1MWI0NDYzNmE0YWI1Yzg0MDk3MGE1N2ZfMy01LTEtMS0yMjYxL3RleHRyZWdpb246YTI3YTRlNDZlNDJkNGZiNmIzOTg2MGJlNzRmMTNkNTRfNA_640a3bdb-5fc3-41dc-a1f8-3d2268f396f6">P4Y3M14D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i32a94f674f9c4282bda3725ed1efa2c3_D20200101-20200331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjg4Yzc2ODM1NTFiNDQ2MzZhNGFiNWM4NDA5NzBhNTdmL3RhYmxlcmFuZ2U6ODhjNzY4MzU1MWI0NDYzNmE0YWI1Yzg0MDk3MGE1N2ZfMy01LTEtMS0yMjYxL3RleHRyZWdpb246YTI3YTRlNDZlNDJkNGZiNmIzOTg2MGJlNzRmMTNkNTRfMTA_9c590d89-2cc7-4ac0-86b6-bc829318fa8b">P4Y9M14D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTg0NzU_b1b5c6d8-80ba-405c-9f71-d42cd47886c9">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;A roll-forward of fair value measurements using significant unobservable inputs (Level 3) for the warrants is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:79.530%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.270%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended March 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%"&gt;Balance January 1, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Issuance of warrants, January 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;1,636&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Gain from change in fair value of warrants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;(873)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%"&gt;Balance March 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock>
    <us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent
      contextRef="ia14618e080534548a2781f9ad7ec8f84_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjZmYTUxZWRlZmMxODQ4ZTE4MGRkYzIwNGJlZmZmNGM3L3RhYmxlcmFuZ2U6NmZhNTFlZGVmYzE4NDhlMTgwZGRjMjA0YmVmZmY0YzdfMS0xLTEtMS0w_5b493e3c-3b44-4b82-bfb3-306784535b44"
      unitRef="usd">0</us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjZmYTUxZWRlZmMxODQ4ZTE4MGRkYzIwNGJlZmZmNGM3L3RhYmxlcmFuZ2U6NmZhNTFlZGVmYzE4NDhlMTgwZGRjMjA0YmVmZmY0YzdfMi0xLTEtMS0w_03a1d8f6-3d5a-4ac9-9ce9-ecced1c07fef"
      unitRef="usd">1636000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues>
    <us-gaap:FairValueAdjustmentOfWarrants
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjZmYTUxZWRlZmMxODQ4ZTE4MGRkYzIwNGJlZmZmNGM3L3RhYmxlcmFuZ2U6NmZhNTFlZGVmYzE4NDhlMTgwZGRjMjA0YmVmZmY0YzdfNC0xLTEtMS0w_56cdff3e-ecf3-4e38-98b7-911f1e9d2431"
      unitRef="usd">-873000</us-gaap:FairValueAdjustmentOfWarrants>
    <us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent
      contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RhYmxlOjZmYTUxZWRlZmMxODQ4ZTE4MGRkYzIwNGJlZmZmNGM3L3RhYmxlcmFuZ2U6NmZhNTFlZGVmYzE4NDhlMTgwZGRjMjA0YmVmZmY0YzdfNS0xLTEtMS0w_b534eed6-5532-45aa-b58b-79fab88de4cf"
      unitRef="usd">763000</us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent>
    <us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfNzk5NA_ef777a2c-d300-43a2-8eeb-82cd59bb78a6">RESTRUCTURING&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For the three months ended March&#160;31, 2021 and March&#160;31, 2020, we recorded net restructuring credits of approximately $19 thousand and $14 thousand, respectively, related to the costs and offsetting sub-lease income and accretion expense for the remaining lease obligation for our former New York, New York office. For additional information regarding the restructuring actions taken as part of the restructuring plans, please refer to Note 3, &#x201c;Restructuring,&#x201d; included under Item&#160;8, &#x201c;Financial Statements and Supplementary Data,&#x201d; of our 2020 Annual Report.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our restructuring liabilities consist of estimated ongoing costs related to long-term operating lease obligations, which the Company exited. The recorded value of the ongoing lease obligations is based on the remaining lease term and payment amount, discounted to present value. Changes in subsequent periods resulting from a revision to either the timing or the amount of estimated cash flows over the future period are measured using the credit adjusted, risk free rate that was used to measure the restructuring liabilities initially. Please also refer to Note 6, &#x201c;Leases&#x201d;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a reconciliation of the beginning and ending balances of our restructuring liability as it relates to the restructuring plans (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:58.359%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.869%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.872%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at December 31, 2020 and 2019&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accretion of lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at March 31, 2021 and 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a reconciliation of the ending balance of our restructuring liability at March&#160;31, 2021 to the balance sheet:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:58.359%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.869%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.872%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at March 31, 2021 and 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less, short-term restructuring liability&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term restructuring liability, included in other liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As a result of the restructuring actions and initiatives described above, we have reduced our operating expenses to be more commensurate with our sales volumes. However, we continue to incur losses and have a substantial accumulated deficit, and &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;substantial doubt about our ability to continue as a going concern continues to exist at March&#160;31, 2021. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Throughout 2020, as well as the first quarter 2021, we have continued to evaluate and assess strategic options as we seek to achieve profitability. We plan to achieve profitability through growing our sales by continuing to execute on our multi-channel sales strategy that targets key verticals, such as government, healthcare, education, and commercial and industrial, complemented by our marketing outreach campaigns and expanding channel partnerships. We also plan to continue to develop and launch advanced lighting and lighting control technologies and introduce impactful new products such as EnFocus&#x2122;, a breakthrough lighting control platform we officially launched during the second quarter of 2020. In addition, during the last quarter of 2020, we announced newly developed UVCD products for both consumer, as well as commercial and industrial markets, that are expected to be available in the third quarter of 2021.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;As described in Note 9, &#x201c;Stockholders&#x2019; Equity,&#x201d; we also raised approximately $2.3 million of net proceeds upon the issuance of common stock and warrants in connection with the January 2020 Equity Offering. Additionally, in August 2020, we entered into two new revolving credit facilities as described in Note 7, &#x201c;Debt,&#x201d; which allow for expanded borrowing capacity, which capacity was further increased by an April 20, 2021 amendment to one of the facilities. See Note 11, &#x201c;Subsequent Events&#x201d;. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The restructuring and cost cutting initiatives implemented during 2020, as well as the January 2020 Equity Offering that significantly strengthened our balance sheet, the PPP loan we obtained in April 2020 and our enhanced debt capacity due to the debt refinancing in August 2020 and capacity increase and additional bridge financing in April 2021, were designed to allow us to effectively execute these strategies. However, our efforts may not occur as quickly as we envision or be successful due to the long sales cycle in our industry, the corresponding time required to ramp up sales from new products and markets into this sales cycle, the timing of introductions of additional new products, significant competition, potential sales volatility given our customer concentration, and the recent and lingering economic impact from the COVID-19 pandemic that had significantly diminished the interest and activities for lighting retrofit projects until occupancy returns to more normal levels, among other factors. As a result, we will continue to review and pursue selected external funding sources to ensure adequate financial resources to execute across the timelines required to achieve these objectives including, but not limited to, the following:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt"&gt;obtaining financing from traditional or non-traditional investment capital organizations or individuals; &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt"&gt;obtaining funding from the sale of our common stock or other equity or debt instruments; and&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt"&gt;obtaining debt financing with lending terms that more closely match our business model and capital needs.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;There can be no assurance that we will obtain funding on acceptable terms, in a timely fashion, or at all. Obtaining additional funding contains risks, including:&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:72pt;text-indent:-36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt"&gt;additional equity financing may not be available to us on satisfactory terms, and any equity we are able to issue could lead to dilution for current stockholders and have rights, preferences and privileges senior to our common stock;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:72pt;text-indent:-36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt"&gt;loans or other debt instruments may have terms and/or conditions, such as interest rate, restrictive covenants, conversion features, refinancing demands, and control or revocation provisions, which are not acceptable to management or our board of directors; and&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:72pt;text-indent:-36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt"&gt;the current environment in the capital markets combined with our capital constraints may prevent us from being able to obtain adequate debt financing.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;If we fail to obtain the required additional financing to sustain our business before we are able to produce levels of revenue to meet our financial needs, we will need to delay, scale back or eliminate our growth plans and further reduce our operating costs and headcount, each of which would have a material adverse effect on our business, future prospects, and financial condition. A lack of additional funding could also result in our inability to continue as a going concern and force us to sell certain assets or discontinue or curtail our operations and, as a result, investors in the Company could lose their entire investment.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Considering both quantitative and qualitative information, we continue to believe that the combination of our plans to obtain additional external funding, timely re-organizational actions, current financial position, liquid resources, obligations due or anticipated within the next year, development and implementation of an excess inventory reduction plan, plans and initiatives in our research and development, product development and sales and marketing, and development of potential channel partnerships, if adequately executed, will provide us with an ability to finance our operations through the next twelve months and will mitigate the substantial doubt about our ability to continue as a going concern. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;On August 17, 2020, we received a letter from the Listing Qualifications staff (the &#x201c;Staff&#x201d;) of The Nasdaq Stock Market (&#x201c;Nasdaq&#x201d;) notifying us that we were no longer in compliance with Nasdaq Listing Rule 5550(b)(1), which requires listed companies to maintain stockholders&#x2019; equity of at least $2,500,000 if they do not meet the alternative compliance standards relating to the market value of listed securities or net income from continuing operations (the &#x201c;Minimum Stockholders&#x2019; Equity Rule&#x201d;). Our Quarterly Report on Form 10-Q for the quarterly period ended June 30, 2020, filed on August 13, 2020, reflected that our stockholders&#x2019; equity as of June 30, 2020 was $1,714,000. In addition, as of August 13, 2020, we did not meet the alternative compliance standards relating to the market value of listed securities or net income from continuing operations. On October 5, 2020, based on our timely submission of our plan to regain compliance, Nasdaq granted us an extension through February 15, 2021 to regain compliance with the Minimum Stockholders&#x2019; Equity Rule, subject to our compliance with certain terms of the extension. In accordance with one part of the plan submitted to the Staff, we have successfully modified our outstanding warrants and are able to now classify the warrants within equity. At December 31, 2020, our stockholders&#x2019; equity was $4,255,000. On January 20, 2021, we received a letter from the Staff notifying us that, on a conditional basis, Nasdaq has determined that we have regained compliance with the Minimum Stockholders&#x2019; Equity Rule. At March&#160;31, 2021, our stockholders&#x2019; equity was $3,278,000.&lt;/span&gt;&lt;/div&gt;</us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock>
    <us-gaap:RestructuringCosts
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfMTA5OTUxMTYzNTkxNA_45ef9e50-a491-4466-aa4e-9ced26e61a1a"
      unitRef="usd">-19000</us-gaap:RestructuringCosts>
    <us-gaap:RestructuringCosts
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfMTA5OTUxMTYzNTkyMQ_435071a1-157e-48db-a35a-d135f531a5aa"
      unitRef="usd">-14000</us-gaap:RestructuringCosts>
    <us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfNzk5MQ_48e9b3a8-83eb-45db-aad4-8ed4b68d641d">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a reconciliation of the beginning and ending balances of our restructuring liability as it relates to the restructuring plans (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:58.359%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.869%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.872%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at December 31, 2020 and 2019&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;11&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accretion of lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at March 31, 2021 and 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a reconciliation of the ending balance of our restructuring liability at March&#160;31, 2021 to the balance sheet:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:58.359%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.869%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.872%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at March 31, 2021 and 2020&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less, short-term restructuring liability&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term restructuring liability, included in other liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock>
    <us-gaap:RestructuringReserve
      contextRef="i14709b4c82a0489196f048d100db74eb_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfMS0xLTEtMS0xMjY2_03d8ad86-7cdc-471a-a871-b2754975e651"
      unitRef="usd">11000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="iedd1f016b9da46ea84aceb964ba2d25d_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfMS0xLTEtMS0w_e5b9b063-0506-4e43-ac44-3d18b98c3b00"
      unitRef="usd">38000</us-gaap:RestructuringReserve>
    <efoi:RestructuringReserveAccretion
      contextRef="i27e7396aac0e4b97b740d544c79f4b1b_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfMi0xLTEtMS0xMjY2_ec605952-6677-49e5-8792-197045a4aadb"
      unitRef="usd">0</efoi:RestructuringReserveAccretion>
    <efoi:RestructuringReserveAccretion
      contextRef="ica32c0b758bf4b018d2e8647394b7df2_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfMi0xLTEtMS0w_251a53df-1cde-409c-aa45-e2dfa38c3afd"
      unitRef="usd">1000</efoi:RestructuringReserveAccretion>
    <us-gaap:PaymentsForRestructuring
      contextRef="i27e7396aac0e4b97b740d544c79f4b1b_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfMy0xLTEtMS0xMjg4_f6336c07-0f70-4b9e-89ec-6a9d93ca1f2a"
      unitRef="usd">6000</us-gaap:PaymentsForRestructuring>
    <us-gaap:PaymentsForRestructuring
      contextRef="ica32c0b758bf4b018d2e8647394b7df2_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfMy0xLTEtMS0w_b21552aa-bb10-4fab-b775-717774e35778"
      unitRef="usd">8000</us-gaap:PaymentsForRestructuring>
    <us-gaap:RestructuringReserve
      contextRef="i64ee7f906d4b4626994aae8553910939_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfNC0xLTEtMS0xMjg4_62f35dff-09c1-4b1e-a04b-9fa3c5e728e2"
      unitRef="usd">5000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="ibf094f935bc54a188e70ed93967f05b2_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmRmNDVmYmUxZmU3YjQ5MjdiNDY1ZjA4OWZkMmE1ODQzL3RhYmxlcmFuZ2U6ZGY0NWZiZTFmZTdiNDkyN2I0NjVmMDg5ZmQyYTU4NDNfNC0xLTEtMS0w_0bf3f810-3aba-4f2e-9148-2ec431a466e5"
      unitRef="usd">31000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="i64ee7f906d4b4626994aae8553910939_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmM0NmMyMDIyNzNlZjRkMmFhNTE5NzVhNTIzNjFlODY1L3RhYmxlcmFuZ2U6YzQ2YzIwMjI3M2VmNGQyYWE1MTk3NWE1MjM2MWU4NjVfMS0xLTEtMS0xMzAz_885ab2d1-2f23-4dcd-996f-a822ec670a84"
      unitRef="usd">5000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserve
      contextRef="ibf094f935bc54a188e70ed93967f05b2_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmM0NmMyMDIyNzNlZjRkMmFhNTE5NzVhNTIzNjFlODY1L3RhYmxlcmFuZ2U6YzQ2YzIwMjI3M2VmNGQyYWE1MTk3NWE1MjM2MWU4NjVfMS0xLTEtMS0w_b88d0414-e1db-43a0-8374-d736a9519e8c"
      unitRef="usd">31000</us-gaap:RestructuringReserve>
    <us-gaap:RestructuringReserveCurrent
      contextRef="i64ee7f906d4b4626994aae8553910939_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmM0NmMyMDIyNzNlZjRkMmFhNTE5NzVhNTIzNjFlODY1L3RhYmxlcmFuZ2U6YzQ2YzIwMjI3M2VmNGQyYWE1MTk3NWE1MjM2MWU4NjVfMi0xLTEtMS0xMzAz_3b75a479-5b47-4190-a02b-4b2ae7c42d44"
      unitRef="usd">5000</us-gaap:RestructuringReserveCurrent>
    <us-gaap:RestructuringReserveCurrent
      contextRef="ibf094f935bc54a188e70ed93967f05b2_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmM0NmMyMDIyNzNlZjRkMmFhNTE5NzVhNTIzNjFlODY1L3RhYmxlcmFuZ2U6YzQ2YzIwMjI3M2VmNGQyYWE1MTk3NWE1MjM2MWU4NjVfMi0xLTEtMS0w_3bd61f23-abbb-4320-b57c-e6a376570acb"
      unitRef="usd">24000</us-gaap:RestructuringReserveCurrent>
    <us-gaap:RestructuringReserveNoncurrent
      contextRef="i64ee7f906d4b4626994aae8553910939_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmM0NmMyMDIyNzNlZjRkMmFhNTE5NzVhNTIzNjFlODY1L3RhYmxlcmFuZ2U6YzQ2YzIwMjI3M2VmNGQyYWE1MTk3NWE1MjM2MWU4NjVfMy0xLTEtMS0xMzE0_be645f9e-fb5d-47ff-9148-a1a09d1f96f7"
      unitRef="usd">0</us-gaap:RestructuringReserveNoncurrent>
    <us-gaap:RestructuringReserveNoncurrent
      contextRef="ibf094f935bc54a188e70ed93967f05b2_I20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RhYmxlOmM0NmMyMDIyNzNlZjRkMmFhNTE5NzVhNTIzNjFlODY1L3RhYmxlcmFuZ2U6YzQ2YzIwMjI3M2VmNGQyYWE1MTk3NWE1MjM2MWU4NjVfMy0xLTEtMS0w_cfc6d48a-b05f-4ca1-816d-2e0a3932d0e6"
      unitRef="usd">7000</us-gaap:RestructuringReserveNoncurrent>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfMjgzNw_b1c8ee82-1725-4f4b-80b7-6b520d53ed99"
      unitRef="usd">2300000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <us-gaap:StockholdersEquity
      contextRef="i9c3de87bc8c44c3da15548537e3ffc68_I20200630"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfMzI5ODUzNDg5NDAyOA_14fdd475-7059-43ac-9749-c848378b6513"
      unitRef="usd">1714000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfMzI5ODUzNDg5NDA1NA_cf7772f1-f222-4eb6-a681-617122f1f14e"
      unitRef="usd">4255000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80OS9mcmFnOmMwNGQ0YjM1OWViNjQ4OWI4NjU5YTM0MmZiZTQ4Y2I1L3RleHRyZWdpb246YzA0ZDRiMzU5ZWI2NDg5Yjg2NTlhMzQyZmJlNDhjYjVfMzI5ODUzNDg5NDM0Ng_fb7b1845-b432-4677-aa87-81a854045a48"
      unitRef="usd">3278000</us-gaap:StockholdersEquity>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RleHRyZWdpb246ODI2N2IxODJhZDJkNDExYzgzMDgwNzc0MDE3NTI2OTJfMzY2_c958dd0a-9221-47fb-ba76-4a885cbf31d0">INVENTORIES&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories are stated at the lower of standard cost (which approximates actual cost determined using the first-in, first-out cost method) or net realizable value, and consist of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.815%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.569%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,373&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,695&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,840&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Reserves for excess, obsolete, and slow-moving inventories &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,983)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,894)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Inventories, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,515&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,641&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a roll-forward of the reserves for excess, obsolete, and slow-moving inventories (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.815%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.569%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Twelve months ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Beginning balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,894)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,518)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrual&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(101)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Reduction due to sold inventory&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;343&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Reserves for excess, obsolete, and slow-moving inventories&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,983)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,894)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RleHRyZWdpb246ODI2N2IxODJhZDJkNDExYzgzMDgwNzc0MDE3NTI2OTJfMzU2_c0e73a65-08f1-457e-8ba5-e1199a46b552">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories are stated at the lower of standard cost (which approximates actual cost determined using the first-in, first-out cost method) or net realizable value, and consist of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.815%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.569%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,373&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,695&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,125&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,840&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Reserves for excess, obsolete, and slow-moving inventories &lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,983)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,894)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Inventories, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,515&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,641&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a roll-forward of the reserves for excess, obsolete, and slow-moving inventories (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.815%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.569%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Twelve months ended December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Beginning balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,894)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,518)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrual&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(101)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Reduction due to sold inventory&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;343&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Reserves for excess, obsolete, and slow-moving inventories&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,983)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,894)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfMS0xLTEtMS0w_de3f5c5d-af41-4c15-8f09-b92120506e6b"
      unitRef="usd">4373000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfMS0zLTEtMS0w_cae23492-924a-4c3e-883d-e569519637f1"
      unitRef="usd">2695000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfMi0xLTEtMS0w_36e4ceef-6993-48da-bca7-0df1d6602156"
      unitRef="usd">6125000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfMi0zLTEtMS0w_fdeadaab-5653-42d6-97d4-9c4ae2113f84"
      unitRef="usd">5840000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfMy0xLTEtMS0w_14821c4e-d8e4-4795-9bc7-ac888df4a7ad"
      unitRef="usd">2983000</efoi:InventoryValuationReservesRawMaterials>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfMy0zLTEtMS0w_4780b0d2-b097-484a-b210-d21fa281c055"
      unitRef="usd">2894000</efoi:InventoryValuationReservesRawMaterials>
    <us-gaap:InventoryNet
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfNC0xLTEtMS0w_3655dab1-1129-46fe-ab6f-7b77cbfa211f"
      unitRef="usd">7515000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOjVmMDA5ZTExYzk3NDQ1MGM4Zjg2YzQxNWY0OTRiYTQ3L3RhYmxlcmFuZ2U6NWYwMDllMTFjOTc0NDUwYzhmODZjNDE1ZjQ5NGJhNDdfNC0zLTEtMS0w_57c5a6dd-de4a-462d-a0db-987bf8806cd1"
      unitRef="usd">5641000</us-gaap:InventoryNet>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfMS0xLTEtMS0w_76d11004-ceb5-42fc-a29a-847e9307b084"
      unitRef="usd">2894000</efoi:InventoryValuationReservesRawMaterials>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="ia14618e080534548a2781f9ad7ec8f84_I20191231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfMS0zLTEtMS0w_79e3d115-fbfa-4756-ba97-eeba6c44a079"
      unitRef="usd">3518000</efoi:InventoryValuationReservesRawMaterials>
    <efoi:InventoryValuationReservesProvisionAccrual
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfMi0xLTEtMS0w_bab31bad-1f72-4583-a37a-2e96e8a4f79d"
      unitRef="usd">-101000</efoi:InventoryValuationReservesProvisionAccrual>
    <efoi:InventoryValuationReservesProvisionAccrual
      contextRef="i00eb0670d1e149a2a10c5ce329bb1fa2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfMi0zLTEtMS0w_d775950d-9f81-4dd9-b0fe-30929a9278a2"
      unitRef="usd">281000</efoi:InventoryValuationReservesProvisionAccrual>
    <efoi:InventoryValuationReservesSalesOfInventory
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfMy0xLTEtMS0w_78afeb4e-6083-4ef3-aeaf-56bc23384ad2"
      unitRef="usd">12000</efoi:InventoryValuationReservesSalesOfInventory>
    <efoi:InventoryValuationReservesSalesOfInventory
      contextRef="i00eb0670d1e149a2a10c5ce329bb1fa2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfMy0zLTEtMS0w_5293ba51-e0fe-45bc-9147-6f7c155cabd3"
      unitRef="usd">343000</efoi:InventoryValuationReservesSalesOfInventory>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfNS0xLTEtMS0w_723c7ba8-2852-42a2-b9a5-9eb3fbdd2d07"
      unitRef="usd">2983000</efoi:InventoryValuationReservesRawMaterials>
    <efoi:InventoryValuationReservesRawMaterials
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81NS9mcmFnOjgyNjdiMTgyYWQyZDQxMWM4MzA4MDc3NDAxNzUyNjkyL3RhYmxlOmVmMDFlZGMxOWYyYTQ2OTViMmRkNTRjNTY0ZGQxNWNlL3RhYmxlcmFuZ2U6ZWYwMWVkYzE5ZjJhNDY5NWIyZGQ1NGM1NjRkZDE1Y2VfNS0zLTEtMS0w_019c1ac3-71f0-4be3-9f2c-1c0150bbdaec"
      unitRef="usd">2894000</efoi:InventoryValuationReservesRawMaterials>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RleHRyZWdpb246Y2EwMjc2ZjhkZmI2NDUyMGE2NzE1NmZjYTU0ZmE1MGRfMzcx_08ff2e42-da15-4997-bf23-ecdb9c062125">PROPERTY AND EQUIPMENT&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment are stated at cost and depreciated using the straight-line method over the estimated useful lives of the related assets and consist of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.815%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.569%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Equipment (useful life 3 to 15 years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tooling (useful life 2 to 5 years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vehicles (useful life 5 years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures (useful life 5 years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer software (useful life 3 years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements (the shorter of useful life or lease life)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;169&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;169&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease right-of-use asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Projects in progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;152&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;140&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Property and equipment at cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,711)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,664)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;482&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;420&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Depreciation expense was $47&#160;thousand and $46&#160;thousand for the three months ended March 31, 2021 and 2020, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RleHRyZWdpb246Y2EwMjc2ZjhkZmI2NDUyMGE2NzE1NmZjYTU0ZmE1MGRfMzc0_ca385032-9f78-4e6d-ade8-f33002d79924">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Property and equipment are stated at cost and depreciated using the straight-line method over the estimated useful lives of the related assets and consist of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.815%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.569%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31,&lt;br/&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31,&lt;br/&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Equipment (useful life 3 to 15 years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Tooling (useful life 2 to 5 years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;240&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vehicles (useful life 5 years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;47&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Furniture and fixtures (useful life 5 years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Computer software (useful life 3 years)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,057&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Leasehold improvements (the shorter of useful life or lease life)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;169&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;169&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease right-of-use asset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Projects in progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;152&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;140&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Property and equipment at cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,193&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less: accumulated depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,711)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,664)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Property and equipment, net&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;482&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;420&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i6d49f812163f4d3d85774dca03acfc52_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMS0wLTEtMS0wL3RleHRyZWdpb246ZDI0OGRmNmEwZDMyNGExMDgzMTQwYzNmMGY5OTJhZThfMjc_5440e516-2e11-4e9c-a23b-feff0243abb2">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i88122b3825db421e9e332c8822107e7e_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMS0wLTEtMS0wL3RleHRyZWdpb246ZDI0OGRmNmEwZDMyNGExMDgzMTQwYzNmMGY5OTJhZThfMzM_19454439-919e-4723-82f7-6d01ebfcbab7">P15Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i7be828f171874cdba42b9f4de1d4b61a_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMS0xLTEtMS0w_266001e9-bfee-4245-b023-8fd50ade2f90"
      unitRef="usd">1281000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i5bbc9f91e427445cbc2f4a548bc0471a_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMS0zLTEtMS0w_d4b57a11-7d6d-46cd-8625-3dbd1a171a2f"
      unitRef="usd">1281000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i8cc262b55c044c01b5b660dcc05b6cc7_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMi0wLTEtMS0wL3RleHRyZWdpb246OWQ4YzFkNWVjNTcxNDVkMjgxYmRjN2I2MmMwN2RkNTlfMjU_c80ba662-3e0c-49fe-9bc1-fa0c048aa456">P2Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="ie786e94dc15f47d1a47500ff99d55d06_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMi0wLTEtMS0wL3RleHRyZWdpb246OWQ4YzFkNWVjNTcxNDVkMjgxYmRjN2I2MmMwN2RkNTlfMzE_e40f8afd-00ef-4d7e-836a-3544578b8cb8">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i74891aff588748ea823cc93f34624d19_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMi0xLTEtMS0w_ca68f8fe-b881-44ea-8c2b-b22536b1cc08"
      unitRef="usd">240000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i311e719c864f4fefa008ef89eb519e26_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMi0zLTEtMS0w_b6de3f9a-955d-4af2-b742-acc4023ccf3d"
      unitRef="usd">240000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i9898ed25029e4253af5809004bb34303_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMy0wLTEtMS0wL3RleHRyZWdpb246NDE5YjZjNTUyMWZlNDE1ZTk4ODFmZDhlZjU0NTJmYWZfMjY_0edf4b7f-d84c-4051-896d-ca6aff2fa233">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i4977389893ac44e393b1813f5f0d864e_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMy0xLTEtMS0w_7c0d2c5b-6cad-45ac-ae0d-e1c5eecec6a3"
      unitRef="usd">80000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ie8ad94c0c98d44158c649f4918166bd3_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMy0zLTEtMS0w_e023b026-64d1-4182-9492-82810a7f98fa"
      unitRef="usd">47000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i6f748e5851a34d9f96a88b9f90daefbc_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNC0wLTEtMS0wL3RleHRyZWdpb246ZTVlM2U1MGVlMWIwNGZhZTk1ZDhkZDQ1M2MzNGJiNTBfNDA_fed4b802-d9a2-4f00-ad9b-632b77bf70c4">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="id61537b927a64c8e9bf6ef3bbdb02b02_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNC0xLTEtMS0w_8d94b5e2-8062-44f7-b0c7-e7245c3705b9"
      unitRef="usd">137000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ia383ca85d770415d9f2286930cd26494_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNC0zLTEtMS0w_609d7a0f-e7ed-4a2a-95a0-b7dc3cd03cc0"
      unitRef="usd">137000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="i8d4ec91ede574a03a42c7a5660e5b306_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNS0wLTEtMS0wL3RleHRyZWdpb246NTkwZjg0NDM4N2ZkNGM0NTliNDg4MzdkNmYzMTUyZmJfMzU_b3c3088a-115b-43f3-b034-0d8f612a9362">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i0b2c25b550af4aa58cb88a8a68b53a2d_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNS0xLTEtMS0w_3fb921be-f350-4719-a3f9-d8812d57c674"
      unitRef="usd">1121000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i002e091ac95b419093f8a3ed4f1251ff_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNS0zLTEtMS0w_d02085a2-56e8-400a-843f-79a95e334a09"
      unitRef="usd">1057000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i410f5b8952f743bc8f88687a4f16c3f3_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNi0xLTEtMS0w_57d9e81c-2109-4f72-8373-a5fdf5a2c926"
      unitRef="usd">169000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ib0161b0e3e184209b353725f323913c5_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNi0zLTEtMS0w_cd2cb15e-20b2-4dbd-93de-d862ce54c9f2"
      unitRef="usd">169000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ia0e5f09ba4894d82b81dee38c0c97b19_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNy0xLTEtMS0w_61900b73-a2d0-4dca-b868-e9700f6ac0ff"
      unitRef="usd">13000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i56aa58345d2e46e3bb52b44cd3fa1525_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfNy0zLTEtMS0w_717fafb3-4e70-4105-bc7a-1ffca4cc3ba1"
      unitRef="usd">13000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i421ce1d0676647019fe74bdb4cb14a23_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfOC0xLTEtMS0w_d8cf4837-2efd-4854-8305-333dd4f45582"
      unitRef="usd">152000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i0553e71729f146bfa2eb8010210837d3_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfOC0zLTEtMS0w_8e75c052-0c6b-4c6b-a945-b1ebca662459"
      unitRef="usd">140000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfOS0xLTEtMS0w_b5ad4bc5-b27a-4b8b-925d-9e6a05ca675b"
      unitRef="usd">3193000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfOS0zLTEtMS0w_c3f11067-2196-45ae-91c9-ce1766d60b1c"
      unitRef="usd">3084000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMTAtMS0xLTEtMA_44708f63-0943-408b-919a-688ec0573536"
      unitRef="usd">2711000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMTAtMy0xLTEtMA_2c8bd1a6-c10f-47c0-941f-b95563ecd2a0"
      unitRef="usd">2664000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMTEtMS0xLTEtMA_bd391b8d-996c-4da8-9a1c-5531cd8000ff"
      unitRef="usd">482000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RhYmxlOmY4YmZlYjUwZjNmMjQ3ZDhiMDExNzVkNWFhYTVlMzkzL3RhYmxlcmFuZ2U6ZjhiZmViNTBmM2YyNDdkOGIwMTE3NWQ1YWFhNWUzOTNfMTEtMy0xLTEtMA_077bb344-c777-4cc2-b5b8-4754ff3db4bb"
      unitRef="usd">420000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Depreciation
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RleHRyZWdpb246Y2EwMjc2ZjhkZmI2NDUyMGE2NzE1NmZjYTU0ZmE1MGRfMTA5OTUxMTYyODE1OA_e8cac10d-e32c-4eb6-bfed-f6afdc576f24"
      unitRef="usd">47000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl81OC9mcmFnOmNhMDI3NmY4ZGZiNjQ1MjBhNjcxNTZmY2E1NGZhNTBkL3RleHRyZWdpb246Y2EwMjc2ZjhkZmI2NDUyMGE2NzE1NmZjYTU0ZmE1MGRfMTA5OTUxMTYyODE2NQ_c65f83da-5cc2-497f-b09e-e711244bf763"
      unitRef="usd">46000</us-gaap:Depreciation>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE1OA_36597181-d00a-463b-9090-25df3de2e999">LEASESThe Company leases certain equipment, manufacturing, warehouse and office space under non-cancellable operating leases with expirations through 2026 under which it is responsible for related maintenance, taxes and insurance. The Company has one finance lease containing a bargain purchase option upon expiration of the lease in 2022. The lease term consists of the non-cancellable period of the lease, periods covered by options to extend the lease if the Company is reasonably certain to exercise the option, and periods covered by an option to terminate the lease if the Company is reasonably certain not to exercise the option. As of January 21, 2021, the terms of one of these equipment operating leases has been extended through &lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2026. In accordance with Accounting Standard Codification 842, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Leases&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; (&#x201c;Topic 842&#x201d;), the related right-of-use asset and lease liability was updated at the time of modification in January 2021. The present value of the lease obligation for this lease was calculated using an incremental borrowing rate of 15.93%, which was the Company&#x2019;s blended borrowing rate on its revolving lines of credit with Crossroads Financial Group, LLC (as described below in Note 7, &#x201c;Debt&#x201d;) and Factors Southwest L.L.C. (as described below in Note 7, &#x201c;Debt&#x201d;). The present value of the remaining lease obligation was calculated using an incremental borrowing rate of 7.25%, which was the Company&#x2019;s borrowing rate on its former revolving line of credit with Austin Financial Services, Inc. (the &#x201c;Austin Credit Facility&#x201d;). The weighted average remaining lease term for operating, restructuring and finance leases is 1.6 years, 0.3 years, and 1.1 years, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The Company had one restructured lease with a sub-lease component for the New York, New York office that was closed in 2017. The lease expires in 2021. As part of the lease agreement, there was $0.3 million in restricted cash in other current assets on the accompanying Condensed Consolidated Balance Sheets as of both March&#160;31, 2021 and December&#160;31, 2020, which represents collateral against the related letter of credit issued as part of this agreement.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The restructured lease and sub-lease were deemed to be in-scope and thus subject to the requirements of Topic 842 and were evaluated for impairment in accordance with the asset impairment provisions of Accounting Standard Codification 360, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Property, Plant and Equipment&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; (&#x201c;Topic 360&#x201d;). The Company concluded its net right-of-use assets were not impaired and the carrying amount approximates expected sub-lease income in future years as of March&#160;31, 2021. The Company continues to carry certain immaterial operating expenses associated with this lease as restructuring liabilities and will continue to accrete those liabilities in accordance with Accounting Standard Codification 420, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Exit or Disposal Cost Obligations&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; (&#x201c;Topic 420&#x201d;), as has been done since the cease use date in 2017. For additional information regarding treatment of leases please refer to Note 4, &#x201c;Leases,&#x201d; included under Item 8, &#x201c;Financial Statements and Supplementary Data,&#x201d; of our 2020 Annual Report.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of the operating, restructured and finance lease costs recognized in net loss for the three months ended March&#160;31, 2021 and 2020, were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.851%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.568%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating lease cost (income)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sub-lease income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(25)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(25)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;143&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;152&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease cost, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:8pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Restructured lease cost (income)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sub-lease income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restructured lease income, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(12)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:11pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total lease cost, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;120&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental balance sheet information related to the Company&#x2019;s operating and finance leases as of March&#160;31, 2021 and December&#160;31, 2020 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.851%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.568%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;676&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restructured lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets, total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;730&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;901&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restructured lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liabilities, total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;866&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Finance Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Allowances for depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(9)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease assets, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Future minimum lease payments required under operating, restructured and finance leases for each of the 12-month rolling periods below in effect at March&#160;31, 2021 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.967%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Restructured Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Restructured Leases Sub-lease Payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Finance Lease&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2021 to March 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;621&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2022 to March 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2023 to March 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2024 to March 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2025 to March 2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total future undiscounted lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;818&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less imputed interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(37)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash flow information related to leases for the three months ended March&#160;31, 2021 and 2020, was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.568%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Supplemental cash flow information&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid, net, for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows from operating leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;135&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows from restructured leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing cash flows from finance leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LesseeFinanceLeasesTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE1OA_f7aa27c5-db20-499f-a549-2990f74f3721">LEASESThe Company leases certain equipment, manufacturing, warehouse and office space under non-cancellable operating leases with expirations through 2026 under which it is responsible for related maintenance, taxes and insurance. The Company has one finance lease containing a bargain purchase option upon expiration of the lease in 2022. The lease term consists of the non-cancellable period of the lease, periods covered by options to extend the lease if the Company is reasonably certain to exercise the option, and periods covered by an option to terminate the lease if the Company is reasonably certain not to exercise the option. As of January 21, 2021, the terms of one of these equipment operating leases has been extended through &lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;2026. In accordance with Accounting Standard Codification 842, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Leases&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; (&#x201c;Topic 842&#x201d;), the related right-of-use asset and lease liability was updated at the time of modification in January 2021. The present value of the lease obligation for this lease was calculated using an incremental borrowing rate of 15.93%, which was the Company&#x2019;s blended borrowing rate on its revolving lines of credit with Crossroads Financial Group, LLC (as described below in Note 7, &#x201c;Debt&#x201d;) and Factors Southwest L.L.C. (as described below in Note 7, &#x201c;Debt&#x201d;). The present value of the remaining lease obligation was calculated using an incremental borrowing rate of 7.25%, which was the Company&#x2019;s borrowing rate on its former revolving line of credit with Austin Financial Services, Inc. (the &#x201c;Austin Credit Facility&#x201d;). The weighted average remaining lease term for operating, restructuring and finance leases is 1.6 years, 0.3 years, and 1.1 years, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The Company had one restructured lease with a sub-lease component for the New York, New York office that was closed in 2017. The lease expires in 2021. As part of the lease agreement, there was $0.3 million in restricted cash in other current assets on the accompanying Condensed Consolidated Balance Sheets as of both March&#160;31, 2021 and December&#160;31, 2020, which represents collateral against the related letter of credit issued as part of this agreement.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The restructured lease and sub-lease were deemed to be in-scope and thus subject to the requirements of Topic 842 and were evaluated for impairment in accordance with the asset impairment provisions of Accounting Standard Codification 360, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Property, Plant and Equipment&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; (&#x201c;Topic 360&#x201d;). The Company concluded its net right-of-use assets were not impaired and the carrying amount approximates expected sub-lease income in future years as of March&#160;31, 2021. The Company continues to carry certain immaterial operating expenses associated with this lease as restructuring liabilities and will continue to accrete those liabilities in accordance with Accounting Standard Codification 420, &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Exit or Disposal Cost Obligations&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; (&#x201c;Topic 420&#x201d;), as has been done since the cease use date in 2017. For additional information regarding treatment of leases please refer to Note 4, &#x201c;Leases,&#x201d; included under Item 8, &#x201c;Financial Statements and Supplementary Data,&#x201d; of our 2020 Annual Report.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of the operating, restructured and finance lease costs recognized in net loss for the three months ended March&#160;31, 2021 and 2020, were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.851%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.568%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating lease cost (income)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sub-lease income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(25)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(25)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;143&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;152&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease cost, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:8pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Restructured lease cost (income)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sub-lease income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restructured lease income, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(12)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:11pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total lease cost, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;120&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental balance sheet information related to the Company&#x2019;s operating and finance leases as of March&#160;31, 2021 and December&#160;31, 2020 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.851%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.568%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;676&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restructured lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets, total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;730&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;901&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restructured lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liabilities, total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;866&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Finance Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Allowances for depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(9)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease assets, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Future minimum lease payments required under operating, restructured and finance leases for each of the 12-month rolling periods below in effect at March&#160;31, 2021 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.967%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Restructured Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Restructured Leases Sub-lease Payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Finance Lease&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2021 to March 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;621&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2022 to March 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2023 to March 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2024 to March 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2025 to March 2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total future undiscounted lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;818&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less imputed interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(37)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash flow information related to leases for the three months ended March&#160;31, 2021 and 2020, was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.568%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Supplemental cash flow information&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid, net, for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows from operating leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;135&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows from restructured leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing cash flows from finance leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeFinanceLeasesTextBlock>
    <efoi:LesseeOperatingLeaseInterestRateEffectiveRate
      contextRef="i01c4d52bc6c44c60ae149c09a5bffa8c_I20210121"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMTA5OTUxMTYzMTg5Mw_07ea219c-94a6-4cd4-8a19-9f8af16a5e39"
      unitRef="number">0.1593</efoi:LesseeOperatingLeaseInterestRateEffectiveRate>
    <us-gaap:LesseeOperatingLeaseDiscountRate
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfNzcx_6b9e35e7-139e-47f4-ae7d-c14be5e979d4"
      unitRef="number">0.0725</us-gaap:LesseeOperatingLeaseDiscountRate>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMTAxNQ_8e3b660a-1b93-4983-b7cc-ed4913b07da8">P1Y7M6D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <efoi:RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMTAyNQ_c0e39361-44fe-4735-b64d-67ea6200f89d">P0Y3M18D</efoi:RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm>
    <us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMTAzOQ_ce6fa11e-e38f-4b48-a687-f38e77faed1c">P1Y1M6D</us-gaap:FinanceLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:RestrictedCash
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMTI1NQ_95e66bd7-34fc-49a9-b71e-b7680f0be088"
      unitRef="usd">300000</us-gaap:RestrictedCash>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE3NQ_c8d19daa-7eb3-46ee-a442-4b1d5cd7a6a0">&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of the operating, restructured and finance lease costs recognized in net loss for the three months ended March&#160;31, 2021 and 2020, were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.851%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.568%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating lease cost (income)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sub-lease income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(25)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(25)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;143&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;152&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease cost, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;127&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:8pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Restructured lease cost (income)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sub-lease income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;56&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;61&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restructured lease income, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(12)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:11pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total lease cost, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;120&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:SubleaseIncome
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfMy0zLTEtMS0w_59f92c4d-44b0-4758-8df7-25ef4de373fe"
      unitRef="usd">25000</us-gaap:SubleaseIncome>
    <us-gaap:SubleaseIncome
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfMy01LTEtMS0w_6fc4c825-773d-4668-b795-cf0cfa48460b"
      unitRef="usd">25000</us-gaap:SubleaseIncome>
    <us-gaap:OperatingLeaseCost
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfNC0zLTEtMS0w_96cf2d03-eb3f-4e47-a57b-5882d8bb3905"
      unitRef="usd">143000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfNC01LTEtMS0w_5ad5f26f-e808-448c-bcfe-d7b5e3ab77b7"
      unitRef="usd">152000</us-gaap:OperatingLeaseCost>
    <efoi:OperatingLeaseCostNetOfSubleaseIncome
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfNS0zLTEtMS0w_4738302b-0c0a-466b-9813-b575ed9f89b3"
      unitRef="usd">118000</efoi:OperatingLeaseCostNetOfSubleaseIncome>
    <efoi:OperatingLeaseCostNetOfSubleaseIncome
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfNS01LTEtMS0w_e17c0e9b-45a2-457c-82d5-6684fd53fcfd"
      unitRef="usd">127000</efoi:OperatingLeaseCostNetOfSubleaseIncome>
    <efoi:RestructuredLeaseSubleaseIncome
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfOC0zLTEtMS0w_2f1cc39a-5164-4189-9496-135a60a49f38"
      unitRef="usd">68000</efoi:RestructuredLeaseSubleaseIncome>
    <efoi:RestructuredLeaseSubleaseIncome
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfOC01LTEtMS0w_6c271bfe-eda3-4d94-8bb6-541fb3f64aee"
      unitRef="usd">68000</efoi:RestructuredLeaseSubleaseIncome>
    <efoi:RestructuredLeaseOperatingLeaseCost
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfOS0zLTEtMS0w_47b5101d-c968-432f-ae4a-d5e0f3022236"
      unitRef="usd">56000</efoi:RestructuredLeaseOperatingLeaseCost>
    <efoi:RestructuredLeaseOperatingLeaseCost
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfOS01LTEtMS0w_fabbffdb-6339-4b9e-ad31-ef7ca83b2e91"
      unitRef="usd">61000</efoi:RestructuredLeaseOperatingLeaseCost>
    <efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfMTAtMy0xLTEtMA_88cab266-8014-421f-bdea-d13e6eee54a7"
      unitRef="usd">-12000</efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome>
    <efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfMTAtNS0xLTEtMA_3beb2c45-4c4d-414f-870f-a559cb30255d"
      unitRef="usd">-7000</efoi:RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome>
    <us-gaap:LeaseCost
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfMTYtMy0xLTEtMA_7fc8272a-d446-48c0-9276-f2b0f1cb4994"
      unitRef="usd">106000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOmM3NjNiMjJhNGQxYTQwOTg4YzEyMjg5MjNmNzBhZGY3L3RhYmxlcmFuZ2U6Yzc2M2IyMmE0ZDFhNDA5ODhjMTIyODkyM2Y3MGFkZjdfMTYtNS0xLTEtMA_e0c160ed-e685-4e31-ae8d-4116177d0bb6"
      unitRef="usd">120000</us-gaap:LeaseCost>
    <efoi:LeaseSupplementalBalanceSheetInformationTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE5Mg_333ca2f6-b35e-45ae-9337-8cba59432bb3">&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental balance sheet information related to the Company&#x2019;s operating and finance leases as of March&#160;31, 2021 and December&#160;31, 2020 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.515%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.851%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.568%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;676&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restructured lease right-of-use assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;107&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease right-of-use assets, total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;730&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;901&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;916&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Restructured lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease liabilities, total&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;866&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,084&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Finance Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Property and equipment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Allowances for depreciation&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(9)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease assets, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total finance lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</efoi:LeaseSupplementalBalanceSheetInformationTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMi0xLTEtMS0w_1cd5c644-969e-4fb3-bdbf-919d484b645a"
      unitRef="usd">676000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMi0zLTEtMS0w_2dd2ae56-3c5c-4a20-88d3-87f2797e7c1a"
      unitRef="usd">794000</us-gaap:OperatingLeaseRightOfUseAsset>
    <efoi:RestructuredOperatingLeaseRightOfUseAsset
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMy0xLTEtMS0w_256fb6ad-2977-490d-85f6-32ee9ff11147"
      unitRef="usd">54000</efoi:RestructuredOperatingLeaseRightOfUseAsset>
    <efoi:RestructuredOperatingLeaseRightOfUseAsset
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMy0zLTEtMS0w_a88fbc15-7fc4-4998-9694-52a3b3bfd56f"
      unitRef="usd">107000</efoi:RestructuredOperatingLeaseRightOfUseAsset>
    <efoi:OperatingLeaseRightofUseAssetIncludingRestructuredLeases
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfNC0xLTEtMS0w_4c50b35b-deb0-458c-a64e-ea174fcc99b1"
      unitRef="usd">730000</efoi:OperatingLeaseRightofUseAssetIncludingRestructuredLeases>
    <efoi:OperatingLeaseRightofUseAssetIncludingRestructuredLeases
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfNC0zLTEtMS0w_f6b50075-fcf6-45e4-92f9-5a4337dbabee"
      unitRef="usd">901000</efoi:OperatingLeaseRightofUseAssetIncludingRestructuredLeases>
    <us-gaap:OperatingLeaseLiability
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfNi0xLTEtMS0w_33509a44-c31a-4d7e-b309-21cb2f716fc7"
      unitRef="usd">781000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfNi0zLTEtMS0w_5b01ea08-2624-404e-a4c1-b2d19966ff9f"
      unitRef="usd">916000</us-gaap:OperatingLeaseLiability>
    <efoi:RestructuredOperatingLeaseLiability
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfNy0xLTEtMS0w_2a94e4c0-71b6-4b34-8fbc-185fbef8e4ec"
      unitRef="usd">85000</efoi:RestructuredOperatingLeaseLiability>
    <efoi:RestructuredOperatingLeaseLiability
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfNy0zLTEtMS0w_f297ec62-1dd8-4c56-8239-b9a12507645f"
      unitRef="usd">168000</efoi:RestructuredOperatingLeaseLiability>
    <efoi:OperatingLeaseLiabilityIncludingRestructuredLeases
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfOC0xLTEtMS0w_f99604b1-f7cd-4383-a208-a6747865e40e"
      unitRef="usd">866000</efoi:OperatingLeaseLiabilityIncludingRestructuredLeases>
    <efoi:OperatingLeaseLiabilityIncludingRestructuredLeases
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfOC0zLTEtMS0w_ef11e434-c8ce-4168-a51a-03a476041d8c"
      unitRef="usd">1084000</efoi:OperatingLeaseLiabilityIncludingRestructuredLeases>
    <efoi:FinanceLeaseRightOfUseAssetGross
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTEtMS0xLTEtMA_73af9f33-2610-4a69-9621-f16c4bfcb8f4"
      unitRef="usd">13000</efoi:FinanceLeaseRightOfUseAssetGross>
    <efoi:FinanceLeaseRightOfUseAssetGross
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTEtMy0xLTEtMA_fc7db705-b854-4c4c-accd-37b097a5cd6f"
      unitRef="usd">13000</efoi:FinanceLeaseRightOfUseAssetGross>
    <efoi:FinanceLeaseRightOfUseAssetAccumulatedDepreciation
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTItMS0xLTEtMA_a3f87fea-1ab9-4877-a933-a6f626b76c03"
      unitRef="usd">10000</efoi:FinanceLeaseRightOfUseAssetAccumulatedDepreciation>
    <efoi:FinanceLeaseRightOfUseAssetAccumulatedDepreciation
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTItMy0xLTEtMA_37367fb2-163c-48d7-976f-b3bb3091246a"
      unitRef="usd">9000</efoi:FinanceLeaseRightOfUseAssetAccumulatedDepreciation>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTMtMS0xLTEtMA_acb708c8-a154-4dd7-b578-08998f49d1f6"
      unitRef="usd">3000</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTMtMy0xLTEtMA_cf8b4eb0-c390-47f2-b683-fe50bd9738b9"
      unitRef="usd">4000</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseLiability
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTUtMS0xLTEtMA_85ff8336-1dbd-4135-bec1-6be6f19d5156"
      unitRef="usd">3000</us-gaap:FinanceLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTUtMy0xLTEtMA_f28e857c-1779-4694-9881-77ac3ea33b62"
      unitRef="usd">4000</us-gaap:FinanceLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTYtMS0xLTEtMA_024cc18e-1f88-4fba-bf3e-c5ac18eb6e44"
      unitRef="usd">3000</us-gaap:FinanceLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjYxMWFmOGE2NDg2NjRlYTVhNWYwNmM0YmI2NGNiNDA0L3RhYmxlcmFuZ2U6NjExYWY4YTY0ODY2NGVhNWE1ZjA2YzRiYjY0Y2I0MDRfMTYtMy0xLTEtMA_ba0be0c6-d418-4054-9e9f-ada0b7a8684a"
      unitRef="usd">4000</us-gaap:FinanceLeaseLiability>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE3OQ_9f7c6ffa-6710-4f33-8298-cc559d328a14">&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Future minimum lease payments required under operating, restructured and finance leases for each of the 12-month rolling periods below in effect at March&#160;31, 2021 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.967%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Restructured Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Restructured Leases Sub-lease Payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Finance Lease&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2021 to March 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;621&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2022 to March 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2023 to March 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2024 to March 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2025 to March 2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total future undiscounted lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;818&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less imputed interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(37)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE3OQ_b7754b7d-581c-42bf-b060-2f57b5ec87af">&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Future minimum lease payments required under operating, restructured and finance leases for each of the 12-month rolling periods below in effect at March&#160;31, 2021 are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:34.635%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.967%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Operating Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Restructured Leases&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Restructured Leases Sub-lease Payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Finance Lease&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2021 to March 2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;621&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2022 to March 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2023 to March 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2024 to March 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2025 to March 2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total future undiscounted lease payments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;818&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;86&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less imputed interest&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(37)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;781&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(68)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMS0yLTEtMS0w_645eb789-a8ed-441c-aba9-988269c45864"
      unitRef="usd">621000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths>
    <efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMS0zLTEtMS0w_9bab413f-8f14-44a6-86d8-cd1771667b62"
      unitRef="usd">86000</efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMS00LTEtMS0w_dc4f3dd6-6069-4662-b7f2-bfabe5cfa997"
      unitRef="usd">68000</us-gaap:LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMS01LTEtMS0w_599fd333-5a24-4e8d-93fc-be5697609c8f"
      unitRef="usd">3000</us-gaap:FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMi0yLTEtMS0w_1d84bc33-9cc7-461d-9f70-57c830e7ee99"
      unitRef="usd">175000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo>
    <efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMi0zLTEtMS0w_fae73b65-eb1a-4cae-bfbc-dd89362c289c"
      unitRef="usd">0</efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMi00LTEtMS0w_c39250df-bb91-49c3-b947-7ecfdf5ec2c1"
      unitRef="usd">0</us-gaap:LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueInRollingYearTwo
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMi01LTEtMS0w_871952f5-3203-4c52-a4c3-a10047c15d71"
      unitRef="usd">0</us-gaap:FinanceLeaseLiabilityPaymentsDueInRollingYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMy0yLTEtMS0w_a13743b3-ac77-4ca2-bb4a-74c91e23e7ff"
      unitRef="usd">16000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree>
    <efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMy0zLTEtMS0w_43dab868-8474-4917-9b85-95195a667552"
      unitRef="usd">0</efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedRollingYearThree
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMy00LTEtMS0w_8427fca1-e7c1-44d0-a5ca-d88b56cd4e0b"
      unitRef="usd">0</us-gaap:LessorOperatingLeasePaymentsToBeReceivedRollingYearThree>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueInRollingYearThree
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfMy01LTEtMS0w_0033b604-aa25-48aa-89cd-4f68545a8b2d"
      unitRef="usd">0</us-gaap:FinanceLeaseLiabilityPaymentsDueInRollingYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNC0yLTEtMS0w_8ca66179-80dc-4abf-a0d4-6e0af766ff6e"
      unitRef="usd">3000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour>
    <efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNC0zLTEtMS0w_57f61cdf-4e68-454a-8428-187431481899"
      unitRef="usd">0</efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedRollingYearFour
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNC00LTEtMS0w_e7d5ed2a-9c7c-46ad-8967-f12b0949391a"
      unitRef="usd">0</us-gaap:LessorOperatingLeasePaymentsToBeReceivedRollingYearFour>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueInRollingYearFour
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNC01LTEtMS0w_ccd39d12-62cc-42f7-ad6a-7ee40cb89ef3"
      unitRef="usd">0</us-gaap:FinanceLeaseLiabilityPaymentsDueInRollingYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNS0yLTEtMS0w_07a33aee-23a0-451f-a75b-da93e55808fc"
      unitRef="usd">3000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive>
    <efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNS0zLTEtMS0w_919c5e97-8e1f-49c3-bbf6-41fed556ee4c"
      unitRef="usd">0</efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceivedRollingYearFive
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNS00LTEtMS0w_50c0161f-f799-47da-87b0-31fd32cde2a1"
      unitRef="usd">0</us-gaap:LessorOperatingLeasePaymentsToBeReceivedRollingYearFive>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueInRollingYearFive
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNS01LTEtMS0w_1275e2e1-37a3-4eca-a4c1-d6d78adcedc2"
      unitRef="usd">0</us-gaap:FinanceLeaseLiabilityPaymentsDueInRollingYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNi0yLTEtMS0w_5b7641da-c010-4005-bb16-702aff441df1"
      unitRef="usd">818000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNi0zLTEtMS0w_c7f5ccb6-d19e-444b-8324-d7a5e6a3ccc9"
      unitRef="usd">86000</efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LessorOperatingLeasePaymentsToBeReceived
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNi00LTEtMS0w_a30a9152-dbf2-45ab-9fe7-b4fa15a8edb3"
      unitRef="usd">68000</us-gaap:LessorOperatingLeasePaymentsToBeReceived>
    <us-gaap:FinanceLeaseLiabilityPaymentsDue
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNi01LTEtMS0w_c6fc92b5-f68c-402c-8385-3bebe7aa1c9f"
      unitRef="usd">3000</us-gaap:FinanceLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNy0yLTEtMS0w_ce0a9032-fa6d-4d75-8244-f84e82cb70ce"
      unitRef="usd">37000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNy0zLTEtMS0w_25cb19c4-013e-4f20-84f3-a98edc486969"
      unitRef="usd">1000</efoi:RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <efoi:LessorOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNy00LTEtMS0w_11dbfcd5-71d8-4192-bd8f-5436f709a7bc"
      unitRef="usd">0</efoi:LessorOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfNy01LTEtMS0w_e346b4d8-7ca2-4d43-b5be-b686fb8ea2a5"
      unitRef="usd">0</us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfOC0yLTEtMS0w_66d1dff3-dff0-4b9b-8dd4-5e4914764e79"
      unitRef="usd">781000</us-gaap:OperatingLeaseLiability>
    <efoi:RestructuredOperatingLeaseLiability
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfOC0zLTEtMS0w_7fdab04c-5d88-4315-a09f-5c07f0f476f7"
      unitRef="usd">85000</efoi:RestructuredOperatingLeaseLiability>
    <efoi:OperatingLeaseReceivable
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfOC00LTEtMS0w_b7bb4b49-abb3-408d-a82d-d42081e7e732"
      unitRef="usd">68000</efoi:OperatingLeaseReceivable>
    <us-gaap:FinanceLeaseLiability
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjVmOTcwN2M1NjU3ZjQ5ZjI5ZGJmYThmMDM5NDg3OGYwL3RhYmxlcmFuZ2U6NWY5NzA3YzU2NTdmNDlmMjlkYmZhOGYwMzk0ODc4ZjBfOC01LTEtMS0w_7ed8cb70-64b9-4452-8a37-e489f9ff2ce6"
      unitRef="usd">3000</us-gaap:FinanceLeaseLiability>
    <efoi:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RleHRyZWdpb246NjE1OGViN2QwZTRiNDU5MmIyYmZiZTU3NDM1ZTc4ODZfMzE4MQ_e2a7b726-db88-4b8b-96a8-148181d177a0">&lt;div style="margin-bottom:8pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash flow information related to leases for the three months ended March&#160;31, 2021 and 2020, was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.568%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Supplemental cash flow information&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid, net, for amounts included in the measurement of lease liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows from operating leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;135&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating cash flows from restructured leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Financing cash flows from finance leases&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</efoi:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjM2MjkwOWRlMWM0NzQ3NjdiNzI1NzVmNTQ1ZjZjY2Y5L3RhYmxlcmFuZ2U6MzYyOTA5ZGUxYzQ3NDc2N2I3MjU3NWY1NDVmNmNjZjlfNC0xLTEtMS0w_1ffc0036-a802-4ad3-add1-a4a379d5d3bd"
      unitRef="usd">136000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjM2MjkwOWRlMWM0NzQ3NjdiNzI1NzVmNTQ1ZjZjY2Y5L3RhYmxlcmFuZ2U6MzYyOTA5ZGUxYzQ3NDc2N2I3MjU3NWY1NDVmNmNjZjlfNC0zLTEtMS0w_0a22ac06-2eac-4675-b12b-64d35cfdee57"
      unitRef="usd">135000</us-gaap:OperatingLeasePayments>
    <efoi:RestructuredLeasesOperatingLeasePayments
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjM2MjkwOWRlMWM0NzQ3NjdiNzI1NzVmNTQ1ZjZjY2Y5L3RhYmxlcmFuZ2U6MzYyOTA5ZGUxYzQ3NDc2N2I3MjU3NWY1NDVmNmNjZjlfNS0xLTEtMS0w_74937bc8-1dd1-4780-9d46-5409c87e46ae"
      unitRef="usd">17000</efoi:RestructuredLeasesOperatingLeasePayments>
    <efoi:RestructuredLeasesOperatingLeasePayments
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjM2MjkwOWRlMWM0NzQ3NjdiNzI1NzVmNTQ1ZjZjY2Y5L3RhYmxlcmFuZ2U6MzYyOTA5ZGUxYzQ3NDc2N2I3MjU3NWY1NDVmNmNjZjlfNS0zLTEtMS0w_c951718e-504b-49fc-a615-d160a0694deb"
      unitRef="usd">17000</efoi:RestructuredLeasesOperatingLeasePayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjM2MjkwOWRlMWM0NzQ3NjdiNzI1NzVmNTQ1ZjZjY2Y5L3RhYmxlcmFuZ2U6MzYyOTA5ZGUxYzQ3NDc2N2I3MjU3NWY1NDVmNmNjZjlfNi0xLTEtMS0w_4646f686-29b8-4839-8a44-61928313a82a"
      unitRef="usd">1000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82MS9mcmFnOjYxNThlYjdkMGU0YjQ1OTJiMmJmYmU1NzQzNWU3ODg2L3RhYmxlOjM2MjkwOWRlMWM0NzQ3NjdiNzI1NzVmNTQ1ZjZjY2Y5L3RhYmxlcmFuZ2U6MzYyOTA5ZGUxYzQ3NDc2N2I3MjU3NWY1NDVmNmNjZjlfNi0zLTEtMS0w_49bf2ba6-361a-4880-b3b5-176c4e0fc465"
      unitRef="usd">1000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTE2Nzk_fcf58415-f7a0-43aa-ab67-3f9de1e5702e">DEBT&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Credit facilities&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;On August 11, 2020, we entered into two debt financing arrangements (together, the &#x201c;Credit Facilities&#x201d;). The first arrangement is an inventory financing facility (the &#x201c;Inventory Facility&#x201d;) pursuant to the Loan and Security Agreement (the &#x201c;Inventory Loan Agreement&#x201d;), between the Company and Crossroads Financial Group, LLC, a North Carolina limited liability company (the &#x201c;IF Lender&#x201d;). Borrowings under the original Inventory Facility were permitted up to the lower of (i) $3.0 million, which amount was subsequently increased to $3.5&#160;million as described below, and (ii) a borrowing base determined from time to time based on the value of the Company&#x2019;s eligible inventory, valued at 75% of inventory costs or 85% of the inventory net orderly liquidation value, less the availability reserves. The outstanding indebtedness under the Inventory Facility accrues at an annual rate equal to the greater of (i) 5.75% and (ii) 4.00% plus the three (3) month LIBOR rate and is also subject to a service fee of 1% per month. The annualized interest rate at March&#160;31, 2021 and December&#160;31, 2020 was 22.4% and 23.6%, respectively. The Inventory Facility&#x2019;s interest and service fees combined amount is subject to a minimum monthly fee of $18 thousand. There would be no breakage fee for the Company for the Inventory Facility if the Company were to refinance it with an American Bankers Association (&#x201c;ABA&#x201d;) equivalent institution after August 11, 2021. The Inventory Facility is secured by substantially all of the present and future assets of the Company and is also governed by an intercreditor agreement among the Company, the IF Lender and the RF Lender (defined below). The Inventory Facility matures on August 11, 2022, subject to early termination upon 90 days&#x2019; notice and otherwise in accordance with the terms of the Inventory Loan Agreement. The term is automatically extended in successive one (1) year increments unless terminated by either party in accordance with the Inventory Loan Agreement. On April 20, 2021, the Company and the IF lender entered into an amendment to the Inventory Loan Agreement to increase the maximum amount that may be available to the Company from $3.0 million previously to $3.5 million, subject to the borrowing base as set forth in the Inventory Loan Agreement. Please also refer to Note 11, &#x201c;Subsequent Events&#x201d;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The second arrangement is a receivables financing facility (the &#x201c;Receivables Facility&#x201d;) pursuant to the Loan and Security Agreement (the &#x201c;Receivables Loan Agreement&#x201d;) between the Company and Factors Southwest L.L.C. (d/b/a FSW Funding), an Arizona limited liability company (the &#x201c;RF Lender&#x201d;). Borrowings under the Receivables Facility are permitted up to the lower of (i) $2.5 million or (ii) a borrowing base determined from time to time based on the value of the Company&#x2019;s eligible accounts receivable, valued at 90% of the face value of such accounts receivable, less availability reserves, if any. Interest on outstanding indebtedness under the Receivables Facility accrues at an annual rate equal to (i) the highest prime rate announced from time to time by the Wall Street Journal plus (ii) 2%. At March&#160;31, 2021 and December&#160;31, 2020, the annualized interest rate was 7.6% and 7.9%, respectively. The annualized interest rate on the collateral management fee was 6% at both March&#160;31, 2021 and December&#160;31, 2020. The Receivables Facility is also secured by substantially all of the present and future assets of the Borrower and is also governed by an intercreditor agreement among the Company, the IF Lender and the RF Lender. A $25 thousand, or 1%, facility fee was charged at closing. There would be no breakage fee for the Company for the Receivables Facility if the Company were to refinance it with an ABA equivalent institution. The Receivables Facility matures on August 11, 2022, subject to early termination in accordance with the terms of the Receivables Loan Agreement; provided that the term is automatically extended in successive one (1) year increments unless terminated by either party in accordance with the Receivables Loan Agreement.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Borrowings under the Inventory Facility were $2.7 million and $1.3 million at March&#160;31, 2021 and December&#160;31, 2020, respectively. Borrowings under the Receivables Facility were $0.7 million and $1.0 million at March&#160;31, 2021 and December&#160;31, 2020, respectively. These facilities are recorded in the Condensed Consolidated Balance Sheet as of March&#160;31, 2021 as a current liability under the caption &#x201c;Credit line borrowings.&#x201d; Outstanding balances include unamortized net issuance costs totaling $0.1 million for the Inventory Facility and $30 thousand for the Receivables Facility as of March&#160;31, 2021, and $0.1 million for the Inventory Facility and $40 thousand for the Receivables Facility as of December&#160;31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Credit Facilities replaced the Austin Credit Facility that was entered into on December 11, 2018 and was secured by a lien on our assets. The Austin Credit Facility was a three year, $5.0 million revolving line of credit. Interest on advances under the line was due monthly at the &#x201c;Prime Rate,&#x201d; as published by the Wall Street Journal from time to time, plus a margin of 2%. The borrowing rate as of March 31, 2020 was 5.25%. Additionally, an annual facility fee of 1% on the entire $5.0 million amount of the Austin Credit Facility was due at the beginning of each of the three years that the Austin Credit Facility was outstanding and a 0.5% collateral management fee on the average outstanding loan balance was payable monthly. Borrowings under the Austin Credit Facility were $0.8 million at March&#160;31, 2020. On August 11, 2020, we paid &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;$1.4 million to close the Austin Credit Facility which included a $100 thousand termination fee. Additionally, we wrote off $59 thousand of the remaining related debt acquisition costs. For additional information regarding the Austin Credit Facility, please refer to Note 9, &#x201c;Debt,&#x201d; included under Item 8, &#x201c;Financial Statements and Supplementary Data,&#x201d; of our 2020 Annual Report.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;For additional information regarding the Credit Facilities, please refer to Part II, Item 5, &#x201c;Other Information,&#x201d; included in our Quarterly Report on Form 10-Q for the quarterly period ended June 30, 2020, filed on August 13, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Convertible Notes&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;On March&#160;29, 2019, we issued $1.7 million aggregate principal amount of subordinated convertible promissory notes (the &#x201c;Convertible Notes&#x201d;) to certain investors in a private placement exempt from the registration requirements of the Securities Act of 1933, as amended. The Convertible Notes bore interest at a rate of 5% per annum until June 30, 2019 and at a rate of 10% thereafter. Pursuant to their terms, on January&#160;16, 2020, following approval by our stockholders of certain amendments to the Certificate of Incorporation, the principal amount of all of the Convertible Notes and&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;the accumulated interest thereon ($0.1&#160;million), which totaled $1.8 million, were converted at a conversion price of $0.67 per share into an aggregate of 2,709,018 shares of the Company&#x2019;s Series A Convertible Preferred Stock, par value 0.0001 per share (&#x201c;Series A Preferred Stock&#x201d;), which is convertible on a one-for-five basis into shares of our common stock. During the year ended December&#160;31, 2020, 111,548 shares of the Series A Preferred Stock were converted into 22,310 shares of common stock. No conversions occurred during the three months ended March&#160;31, 2021. On April 1, 2021, 1,721,023 shares of Series A Preferred Stock were converted into 344,205 shares of common stock. Please also refer to Note 11, &#x201c;Subsequent Events&#x201d;. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The purchase agreement related to the Convertible Notes contains customary representations and warranties and provides for resale registration rights with respect to the shares of our common stock issuable upon conversion of the Series A Preferred Stock. Please also refer to Note 9, &#x201c;Stockholders&#x2019; Equity&#x201d;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Iliad Note &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;On November&#160;25, 2019, we entered into a note purchase agreement (the &#x201c;Iliad Note Purchase Agreement&#x201d;) with Iliad Research and Trading, L.P. (&#x201c;Iliad&#x201d;) pursuant to which the Company sold and issued to Iliad a promissory note in the principal amount of $1.3 million (the &#x201c;Iliad Note&#x201d;). The Iliad Note was issued with an original issue discount of $142 thousand and Iliad paid a purchase price of $1.1 million for the issuance of the Iliad Note, after deduction of $15 thousand of Iliad transaction expenses. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:12pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In December 2020, we repaid the outstanding balance on the Iliad Note in full prior to its maturity date of November&#160;24, 2021. Remaining debt and original issue discount costs of $117 thousand were written off at that time. The Iliad Note accrued interest at 8% per annum, compounded daily, on the outstanding balance.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Pursuant to the Iliad Note Purchase Agreement and the Iliad Note, we had, among other things, agreed that, until the Iliad Note was repaid 10% of gross proceeds the Company received from the sale of our common stock or other equity must be paid to Iliad and applied to reduce the outstanding balance of the Iliad Note. In accordance with the terms of the Iliad Note, 10% of the gross proceeds from the January 2020 Equity Offering ($275 thousand) were used to make payments on the Iliad Note, of which $226 thousand went towards the outstanding principal amount. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The total liability for the Iliad Note, excluding financing fees, was $0.9&#160;million at March 31, 2020. Unamortized loan discount and debt issuance costs were $0.2&#160;million at March 31, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Streeterville Note&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On April 27, 2021, we entered into a note purchase agreement (the &#x201c;Streeterville Note Purchase Agreement&#x201d;) with Streeterville Capital, LLC (&#x201c;Streeterville&#x201d;) pursuant to which we sold and issued to Streeterville a promissory note in the principal amount of approximately $1.7&#160;million (the &#x201c;Streeterville Note&#x201d;). The Streeterville Note was issued with an original issue discount of $194&#160;thousand and Streeterville paid a purchase price of $1.5&#160;million for the Streeterville Note, after deduction of $15&#160;thousand of Streeterville transaction expenses. See also Note 11, &#x201c;Subsequent Events&#x201d;.&lt;/span&gt;&lt;/div&gt;PPP LoanOn April&#160;17, 2020, the Company was granted a loan from KeyBank National Association (&#x201c;KeyBank&#x201d;) in the amount of approximately $795&#160;thousand, pursuant to the Paycheck Protection Program (&#x201c;PPP&#x201d;) under Division A of the Coronavirus Aid, Relief and Economic Security Act (the &#x201c;CARES Act&#x201d;), which was enacted on March 27, 2020. The funds were received on April 20, 2020 and accrued interest at a rate of 1.0% per annum. At December 31, 2020, $529&#160;thousand was classified as short-term debt and $266&#160;thousand was classified as long-term debt on the Company&#x2019;s Consolidated Balance Sheet. Under the terms of the PPP, certain amounts of the loan may be forgiven if they are used for qualifying expenses as described in the CARES Act. The entire principal balance and interest were forgiven by the Small Business Administration on February 11, 2021. The $801&#160;thousand forgiveness income was recorded as other income in the Consolidated Statements of Operations during the three months ended March&#160;31, 2021.</us-gaap:DebtDisclosureTextBlock>
    <efoi:DebtInstrumentNumberOfCreditFacilities
      contextRef="i95512250be8748d786dbf0e2762ce66f_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODkwNg_c7bdd3ce-eb13-4f13-af1f-040a15016c84"
      unitRef="creditfacility">2</efoi:DebtInstrumentNumberOfCreditFacilities>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i2e571f4b493a41619ace396495da7565_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNTA1_05f75e64-ae0c-4787-b911-92a3a32e174a"
      unitRef="usd">3000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i7b82fe3611ec4325a53fba6ad96f5792_I20210420"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODc2Nw_f5fd52bd-c7ed-4d43-96af-601898c18417"
      unitRef="usd">3500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <efoi:LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent
      contextRef="i2e571f4b493a41619ace396495da7565_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNjI5_888497bb-af7c-49f1-b32b-0dbf593920ae"
      unitRef="number">0.75</efoi:LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent>
    <efoi:LineOfCreditFacilityBorrowingCapacityInventoryValuePercent
      contextRef="i2e571f4b493a41619ace396495da7565_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNjU0_de28b478-c0f9-498e-b9b0-1bcea22d312f"
      unitRef="number">0.85</efoi:LineOfCreditFacilityBorrowingCapacityInventoryValuePercent>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i2e571f4b493a41619ace396495da7565_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfODQ5_d51ae9ef-b921-491c-a64f-a2a0073b2f76"
      unitRef="number">0.0575</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i31365bd27b594b55bedee87e4420d604_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfODYx_2e478c6a-970c-4419-a1db-c486224d8b62"
      unitRef="number">0.0400</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:LineOfCreditFacilityMonthlyFacilityFeePercent
      contextRef="if63cde55efd8429db7da4e3f0431b066_D20200811-20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfOTQw_7501ec89-8f4f-473d-a9c3-ec373c3a0776"
      unitRef="number">0.01</efoi:LineOfCreditFacilityMonthlyFacilityFeePercent>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i07083608ea224ea6b028b460c546b025_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NzkzNQ_b7cf69fe-02ad-4fe1-9584-72b73a820794"
      unitRef="number">0.224</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="ia1b70191d97f4ddeb5890c1cc8664025_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0OTE3Mg_6a640b8b-d545-4f8a-9975-68bd71f0f051"
      unitRef="number">0.236</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:LineOfCreditFacilityMonthlyFacilityFee
      contextRef="if63cde55efd8429db7da4e3f0431b066_D20200811-20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA2MA_de52eb72-6236-4a38-bce1-d3b81b12894b"
      unitRef="usd">18000</efoi:LineOfCreditFacilityMonthlyFacilityFee>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i2e571f4b493a41619ace396495da7565_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0ODc5NQ_05f75e64-ae0c-4787-b911-92a3a32e174a"
      unitRef="usd">3000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i7b82fe3611ec4325a53fba6ad96f5792_I20210420"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NzkwMw_291aca93-8d76-4f09-ade1-5d260b4566e3"
      unitRef="usd">3500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="if324298a2a9a437189fe449d8254b842_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjE5Mw_4cc8dc7b-a90a-4d33-8cbe-f50233896e7c"
      unitRef="usd">2500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <efoi:LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent
      contextRef="if324298a2a9a437189fe449d8254b842_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjMyNg_9037148d-5a0d-4c5d-818b-2c666cba3cd4"
      unitRef="number">0.90</efoi:LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i072f5a4e47054886801ffd3c4729ed59_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjYwNw_2ea16353-45d9-4288-a465-c346db407165"
      unitRef="number">0.02</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i666c20d9cab542bda9f87104f59ce94a_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0Nzk0MQ_79343382-f786-46de-ab46-e8b43b701f59"
      unitRef="number">0.076</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i536d2633727441b68c90b3d2772253ad_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0OTI4Ng_5e3d841e-3891-48ff-94c0-6eceeeec589a"
      unitRef="number">0.079</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:DebtInstrumentInterestRateStatedPercentageCollateralManagementFee
      contextRef="i666c20d9cab542bda9f87104f59ce94a_I20210331"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0Nzk0Nw_37bbf227-e966-42a1-a7df-df3d69f7a867"
      unitRef="number">0.06</efoi:DebtInstrumentInterestRateStatedPercentageCollateralManagementFee>
    <efoi:DebtInstrumentInterestRateStatedPercentageCollateralManagementFee
      contextRef="i536d2633727441b68c90b3d2772253ad_I20201231"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0Nzk0Nw_d2ebb426-fb3c-4c41-878b-95da78f75ff4"
      unitRef="number">0.06</efoi:DebtInstrumentInterestRateStatedPercentageCollateralManagementFee>
    <efoi:LineOfCreditFacilityMonthlyFacilityFee
      contextRef="i977b6602441d4c5895543f2422ae1a6b_D20200811-20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjgyNw_ad564128-401e-444a-9540-848ec3eadcea"
      unitRef="usd">25000</efoi:LineOfCreditFacilityMonthlyFacilityFee>
    <efoi:LineOfCreditFacilityMonthlyFacilityFeePercent
      contextRef="i977b6602441d4c5895543f2422ae1a6b_D20200811-20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjgzNA_63e094fd-afc9-4937-b98e-548e3e4690c1"
      unitRef="number">0.01</efoi:LineOfCreditFacilityMonthlyFacilityFeePercent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="i07083608ea224ea6b028b460c546b025_I20210331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTYzOTc2OA_473be294-507b-4d67-9eb2-b198dde3b534"
      unitRef="usd">2700000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="ia1b70191d97f4ddeb5890c1cc8664025_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0OTU3MQ_2933c661-d56a-4a77-a16b-8e2c300b0615"
      unitRef="usd">1300000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="i666c20d9cab542bda9f87104f59ce94a_I20210331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTYzOTgyMw_b673433a-9332-4eba-878c-b25f390192f0"
      unitRef="usd">700000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="i536d2633727441b68c90b3d2772253ad_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0OTU4OQ_76a434e0-7ad4-4387-854a-7a0247d86d68"
      unitRef="usd">1000000.0</us-gaap:LinesOfCreditCurrent>
    <us-gaap:UnamortizedDebtIssuanceExpense
      contextRef="i07083608ea224ea6b028b460c546b025_I20210331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0MDA3MA_d263a320-04cd-4cbf-9ce0-a4961b29c55f"
      unitRef="usd">100000</us-gaap:UnamortizedDebtIssuanceExpense>
    <us-gaap:UnamortizedDebtIssuanceExpense
      contextRef="i666c20d9cab542bda9f87104f59ce94a_I20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0MDEwNQ_f8781780-914d-441e-8f6b-a496b361570f"
      unitRef="usd">30000</us-gaap:UnamortizedDebtIssuanceExpense>
    <us-gaap:UnamortizedDebtIssuanceExpense
      contextRef="ia1b70191d97f4ddeb5890c1cc8664025_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0OTcyNg_a6f1d0e2-8f8e-4b9b-a447-55f09788a49a"
      unitRef="usd">100000</us-gaap:UnamortizedDebtIssuanceExpense>
    <us-gaap:UnamortizedDebtIssuanceExpense
      contextRef="i536d2633727441b68c90b3d2772253ad_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0OTc0Mw_bd11b734-17ad-4530-bc06-d261ac0c711f"
      unitRef="usd">40000</us-gaap:UnamortizedDebtIssuanceExpense>
    <us-gaap:LineOfCreditFacilityExpirationPeriod
      contextRef="i9c2fbcb4bfb34d568bc852c17bd445d1_D20181211-20181211"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwMzUzNg_3cb9d29f-7e65-4d39-9a5c-f05ac43eec8c">P3Y</us-gaap:LineOfCreditFacilityExpirationPeriod>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="ib4ec9ce606ec4a87aed99ad8f20235e6_I20181211"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0MDc1OA_3ed34997-d6f5-483b-a73d-70c6ddb4a692"
      unitRef="usd">5000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="i2830bb7eb7414664948bc6fcb518c1fb_D20181211-20181211"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzU5Nw_be711f7e-047f-46ff-a76d-a472be5beb85"
      unitRef="number">0.02</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i41ebe710d00c457298fbe55e2f33697c_I20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwMzUxNg_491eed00-1342-4c40-83d4-ad35bee9fe29"
      unitRef="number">0.0525</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:LineOfCreditFacilityCommitmentFeePercentage
      contextRef="i9c2fbcb4bfb34d568bc852c17bd445d1_D20181211-20181211"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzcxNA_0c651bf0-eb89-48b4-b342-a5f97a8aa578"
      unitRef="number">0.01</us-gaap:LineOfCreditFacilityCommitmentFeePercentage>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="ib4ec9ce606ec4a87aed99ad8f20235e6_I20181211"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzczMQ_3ed34997-d6f5-483b-a73d-70c6ddb4a692"
      unitRef="usd">5000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <efoi:LineOfCreditFacilityAnnualFacilityFeePeriod
      contextRef="i9c2fbcb4bfb34d568bc852c17bd445d1_D20181211-20181211"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzgxMQ_8690dfb5-66fe-4850-a385-4c291369e005">P3Y</efoi:LineOfCreditFacilityAnnualFacilityFeePeriod>
    <efoi:LineOfCreditFacilityCollateralManagementFee
      contextRef="i9c2fbcb4bfb34d568bc852c17bd445d1_D20181211-20181211"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzg2OA_2b964d7e-c1a6-4b16-872c-0ae6ce217590"
      unitRef="number">0.005</efoi:LineOfCreditFacilityCollateralManagementFee>
    <us-gaap:LinesOfCreditCurrent
      contextRef="i41ebe710d00c457298fbe55e2f33697c_I20200331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwMzU0Nw_0cde2641-7ea6-41bc-b762-45dfe8bf4e9e"
      unitRef="usd">800000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:PaymentsOfDebtExtinguishmentCosts
      contextRef="i953386c333504f1cba95b8d43eb5009b_D20200811-20200811"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNDE3MQ_d5837830-22a4-4740-af05-dd145fda6d96"
      unitRef="usd">1400000</us-gaap:PaymentsOfDebtExtinguishmentCosts>
    <us-gaap:DebtInstrumentFeeAmount
      contextRef="id888f8edb49e460fbb943b31d7eb5988_I20200811"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNDIyNw_5cd53186-d48c-491c-82b4-6ed67524656d"
      unitRef="usd">100000</us-gaap:DebtInstrumentFeeAmount>
    <us-gaap:WriteOffOfDeferredDebtIssuanceCost
      contextRef="i953386c333504f1cba95b8d43eb5009b_D20200811-20200811"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNDI3NA_fa26fccc-3ef2-4665-aa2b-1376528afaa4"
      unitRef="usd">59000</us-gaap:WriteOffOfDeferredDebtIssuanceCost>
    <us-gaap:ProceedsFromIssuanceOfSubordinatedLongTermDebt
      contextRef="i60bf27a363d84282adb85969c19c38da_D20190329-20190329"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNTQ0Mg_f8d4c1e9-6168-4e19-a6f5-6f773054b17c"
      unitRef="usd">1700000</us-gaap:ProceedsFromIssuanceOfSubordinatedLongTermDebt>
    <us-gaap:DebtConversionOriginalDebtInterestRateOfDebt
      contextRef="i1fe3b1abd2b845b58083a94e518739db_D20190329-20190630"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY1Mjg3OA_df910102-7a19-484d-85f5-d0616f8f90cc"
      unitRef="number">0.05</us-gaap:DebtConversionOriginalDebtInterestRateOfDebt>
    <us-gaap:DebtConversionOriginalDebtInterestRateOfDebt
      contextRef="i1f963ba5a5e2497b89de65c65bf1005d_D20190701-20200116"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNTgwMQ_1f6fcecb-c63d-4dd7-b2b1-27db4722b232"
      unitRef="number">0.10</us-gaap:DebtConversionOriginalDebtInterestRateOfDebt>
    <efoi:AccumulatedInterestOnSubordinatedDebt
      contextRef="i77ebeec1a11147f4bddd50d2befab70b_I20200116"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNjAzNA_21983044-3282-4a29-b3e2-bc13880bb6e4"
      unitRef="usd">100000</efoi:AccumulatedInterestOnSubordinatedDebt>
    <efoi:NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock
      contextRef="ib1abd927789c4c3db262bebaaf83998e_D20200116-20200116"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNjExNQ_c359a33e-3873-4ef2-aaa5-0ec9bd3c6c77"
      unitRef="usd">1800000</efoi:NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i77ebeec1a11147f4bddd50d2befab70b_I20200116"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNjE1OQ_c68191af-652d-4691-bbeb-981e6078b946"
      unitRef="usdPerShare">0.67</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="ib1abd927789c4c3db262bebaaf83998e_D20200116-20200116"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjE5OTAyMzI3NjU2NA_87acb089-6c04-4137-ada2-6f3e4e72a3c1"
      unitRef="shares">2709018</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i77ebeec1a11147f4bddd50d2befab70b_I20200116"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjE5OTAyMzI3NjU1Mw_16d02c13-761d-4e7b-a665-2ae5629a92da"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:ConversionOfStockSharesConverted1
      contextRef="ic3472714a7ee4d70a2b3939e8552b242_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMjE5OTAyMzI3NTgwNg_f3f86227-b759-4081-9ef3-ade4dd6ee944"
      unitRef="shares">111548</us-gaap:ConversionOfStockSharesConverted1>
    <us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion
      contextRef="i992eeeca44564c2e8de058eec5fd99d2_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNjQ4Ng_3283338b-e6b0-4a73-a85b-837504f42f3a"
      unitRef="shares">22310</us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion>
    <us-gaap:ConversionOfStockSharesConverted1
      contextRef="i00ea0eba4f7d4d4f97ed3eac19a2d4a6_D20210401-20210401"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0MTUzNA_b3f1c1de-2ed1-41a6-932b-7e83fd6165ab"
      unitRef="shares">1721023</us-gaap:ConversionOfStockSharesConverted1>
    <us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion
      contextRef="i680c85489eaa462b88497e2441ad4b39_I20210401"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0MTU5Mw_b39d8c2f-ffdb-40ac-af3a-2c7447217ca2"
      unitRef="shares">344205</us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i60c86ac561af49569ab990cbc12cc983_I20191125"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNzE3NQ_8c8f5bc8-c68f-4a89-9321-01ea803c561d"
      unitRef="usd">1300000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentUnamortizedPremium
      contextRef="i60c86ac561af49569ab990cbc12cc983_I20191125"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNzI1OQ_4421480d-2072-45e0-b7f7-87bf4f3341f0"
      unitRef="usd">142000</us-gaap:DebtInstrumentUnamortizedPremium>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="i2ccc45ecf1bd477f92e514d8e5da122c_D20191125-20191125"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNzI5Nw_d4b55141-1f81-4d32-8a62-a320e9bfdea5"
      unitRef="usd">1100000</us-gaap:ProceedsFromIssuanceOfDebt>
    <us-gaap:DeferredFinanceCostsGross
      contextRef="i60c86ac561af49569ab990cbc12cc983_I20191125"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfNzM1NQ_6db43f55-ef32-4d58-b9a6-5c572dc798ad"
      unitRef="usd">15000</us-gaap:DeferredFinanceCostsGross>
    <us-gaap:WriteOffOfDeferredDebtIssuanceCost
      contextRef="i64e293c75b2142608d8349f94ac4c621_D20201201-20201201"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0MzkzMA_4f4d3290-2e92-43e4-85b5-3a3384396ae2"
      unitRef="usd">117000</us-gaap:WriteOffOfDeferredDebtIssuanceCost>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i60c86ac561af49569ab990cbc12cc983_I20191125"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0Mzk5NQ_d2679153-07dc-45f9-b43b-a7cf32914b59"
      unitRef="number">0.08</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:DebtInstrumentProceedsToBePaidToLenderPercent
      contextRef="i2ccc45ecf1bd477f92e514d8e5da122c_D20191125-20191125"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NDAzMg_e643012a-2db3-497d-a164-d31ec29ab72e"
      unitRef="number">0.10</efoi:DebtInstrumentProceedsToBePaidToLenderPercent>
    <efoi:DebtInstrumentProceedsToBePaidToLenderPercent
      contextRef="i2ccc45ecf1bd477f92e514d8e5da122c_D20191125-20191125"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NDAzOA_e643012a-2db3-497d-a164-d31ec29ab72e"
      unitRef="number">0.10</efoi:DebtInstrumentProceedsToBePaidToLenderPercent>
    <us-gaap:ProceedsFromIssuanceOrSaleOfEquity
      contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NDA1NA_f368d20a-cf71-4873-8134-4ac38bd27c28"
      unitRef="usd">275000</us-gaap:ProceedsFromIssuanceOrSaleOfEquity>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="i5b14b389eebc47d5bcc51f2dd4812ce8_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NDA3Mw_6b15ab86-66a7-46d1-8153-a25f0d995105"
      unitRef="usd">226000</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="if2f8ae782a86447ea1cd2368f97fa536_I20200331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODc4MQ_99acac99-a2aa-454c-90b5-85d11c0b4749"
      unitRef="usd">900000</us-gaap:DebtInstrumentCarryingAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet
      contextRef="if2f8ae782a86447ea1cd2368f97fa536_I20200331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODc5NQ_4594c98e-12e0-4a17-adcb-a833fce30b05"
      unitRef="usd">200000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODgwOQ_668b22de-cb5e-43de-bdd9-518d466b9378"
      unitRef="usd">1700000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODgyMw_6b204abc-f1a5-4e43-89dd-248caaef6b17"
      unitRef="usd">194000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="i50ba0c2a78a741cbbd1175c3c8e51ca4_D20210427-20210427"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODgzOA_5c4896c9-0e0c-4333-b6e4-99a44ecabc92"
      unitRef="usd">1500000</us-gaap:ProceedsFromIssuanceOfDebt>
    <us-gaap:DeferredFinanceCostsGross
      contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODg1Mg_bbd6234f-222d-409e-89dd-5dd535c94270"
      unitRef="usd">15000</us-gaap:DeferredFinanceCostsGross>
    <us-gaap:ProceedsFromLoanOriginations1
      contextRef="idf0470d514ad4ac296bafa544697e13e_D20200417-20200417"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA2MjA_f47aa303-ab2d-42c9-b5bd-680bbe979654"
      unitRef="usd">795000</us-gaap:ProceedsFromLoanOriginations1>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i8e1357078d1b44c5a35a856fb2002e10_I20200417"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODg4MQ_81f62b41-ead5-4f79-abd4-8952813c0730"
      unitRef="number">0.010</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:PaymentProtectionProgramCurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODg4Nw_976247fc-67f3-4f46-8543-f0427e44ba41"
      unitRef="usd">529000</efoi:PaymentProtectionProgramCurrent>
    <efoi:PaymentProtectionProgramNoncurrent
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMzI5ODUzNDkwODg2Ng_71f192c7-f0ba-421d-b94b-d3ffcdf38a9e"
      unitRef="usd">266000</efoi:PaymentProtectionProgramNoncurrent>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82NC9mcmFnOmJjYjNlMTkwZmQ0MjQ2YzA4NGYyYTBiNTI4YmM4OTU2L3RleHRyZWdpb246YmNiM2UxOTBmZDQyNDZjMDg0ZjJhMGI1MjhiYzg5NTZfMTA5OTUxMTY0NzMxOQ_b763f0fa-647a-4a1a-a1f9-a0b657e5f698"
      unitRef="usd">801000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMjAxMw_aea3d10d-6585-46b3-92e5-950e33ba7190">INCOME TAXES&lt;div style="padding-right:4.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As a result of the operating loss incurred during each of the three months ended March&#160;31, 2021 and 2020, and after the application of the annual limitation set forth under Section 382 of the Internal Revenue Code of 1986, as amended (the &#x201c;IRC&#x201d;), it was not necessary to record a provision for U.S. federal income tax. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-right:4.5pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-right:4.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At March&#160;31, 2021 and December&#160;31, 2020, we had a full valuation allowance recorded against our deferred tax assets. &lt;/span&gt;&lt;/div&gt;&lt;div style="padding-right:4.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The valuation allowance was recorded due to uncertainties related to our ability to realize the deferred tax assets, primarily consisting of certain net operating loss carry-forwards. The valuation allowance is based on management&#x2019;s estimates of taxable income by jurisdiction and the periods over which the deferred tax assets will be recoverable.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-right:4.5pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-right:4.5pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;At December&#160;31, 2020, we had a net operating loss carry-forward of approximately $115.9 million for federal income tax purposes ($72.3 million for state and local income tax purposes). However, due to changes in our capital structure, approximately $61.5 million of the $115.9 million is available after the application of IRC Section 382 limitations. As a result of the Tax Cuts and Jobs Act of 2017 (the &#x201c;Tax Act&#x201d;), net operating loss carry-forwards generated in tax years beginning after December 31, 2017 can only offset 80% of taxable income and can be carried forward indefinitely. The $7.1 million and $8.3 million in net operating losses generated in 2020 and 2019, respectively, will be subject to the new limitations under the Tax Act. If not utilized, the carry-forwards generated prior to December 31, 2017 of $37.3 million will begin to expire in 2021 for federal purposes and have begun to expire for state and local purposes. For a full discussion of the estimated restrictions on our utilization of net operating loss carry-forwards, please refer to Note 12, &#x201c;Income Taxes,&#x201d; included under Item 8, &#x201c;Financial Statements and Supplementary Data,&#x201d; of our 2020 Annual Report.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i2a141a80b8fe446780e60683d3a297dc_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfOTg1_84b51684-55d5-4741-ae0b-040fe9c2b27d"
      unitRef="usd">115900000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i69bb06e237ad42a589c2f56452f3777b_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMTAyMQ_a774c7ce-2e4c-49ac-9df9-7f9bcb12a691"
      unitRef="usd">72300000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <efoi:DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMTEzMA_93d88d1a-b049-4c6f-9b94-9cece6e7de16"
      unitRef="usd">61500000</efoi:DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwards
      contextRef="i2a141a80b8fe446780e60683d3a297dc_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMTE0MA_84b51684-55d5-4741-ae0b-040fe9c2b27d"
      unitRef="usd">115900000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMTA5OTUxMTYyOTgzMQ_22db118c-9a95-4da8-a037-31a67c3431ab"
      unitRef="usd">7100000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="ia14618e080534548a2781f9ad7ec8f84_I20191231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMTA5OTUxMTYyOTgzNw_661ec84d-50ed-4de5-89a6-a815d582a80a"
      unitRef="usd">8300000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration
      contextRef="i3b3aa389d6fc49bfa1333e99d3b82b88_I20171231"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl82Ny9mcmFnOmU2YjgxNDQyNjY4MDRlNzNiMTgxOGJlMDA4OWFiM2RiL3RleHRyZWdpb246ZTZiODE0NDI2NjgwNGU3M2IxODE4YmUwMDg5YWIzZGJfMTY2MA_597079fa-6fdf-4d51-ac69-68ca61f073f3"
      unitRef="usd">37300000</us-gaap:DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration>
    <us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTYyOA_16606cd3-46df-4888-b7bc-400f7364a17a">STOCKHOLDERS&#x2019; EQUITY&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;1-for-5 Reverse Stock Split&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On June 11, 2020, in accordance with previous stockholder approval, our Board of Directors effected a 1-for-5 reverse stock split of the Company&#x2019;s common stock, par value $0.0001 per share. The reverse stock split became effective at the Effective Time upon the filing of the Certificate of Amendment to the Certificate of Incorporation with the Delaware Secretary of State. At the Effective Time, every five shares of common stock issued and outstanding automatically combined into one validly issued, fully paid and non-assessable share of common stock. No fractional shares were issued as a result of the reverse stock split. The fractional shares were settled in cash in an amount not material to the Company. The $0.0001 par value per share of common stock and other terms of the common stock were not affected by the reverse stock split. The number of authorized shares of common stock under the Certificate of Incorporation remained unchanged at 50,000,000 shares. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The current financial statements, as well as prior period financial statements, have been retroactively adjusted to reflect the reverse stock split. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Proportional adjustments were made to the conversion and exercise prices of our outstanding warrants and stock options, and to the number of shares issued and issuable under our stock incentive plans in connection with the reverse stock split. The current financial statements as well as prior period financial statements have been retroactively adjusted to reflect the reverse stock split. Preferred shares outstanding were not affected by the reverse stock split and, as such, those shares have not been adjusted.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The reverse stock split was effected solely to increase the per share trading price of the common stock to satisfy the $1.00&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;minimum bid price requirement pursuant to Nasdaq Listing Rule 5550(a)(2) for continued listing on Nasdaq.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The common stock began trading on Nasdaq on a split-adjusted basis at the opening of trading on June 12, 2020.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Preferred Stock&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Pursuant to the terms of the Convertible Notes, on January 16, 2020, following approval by our stockholders of certain amendments to the Certificate of Incorporation, the principal amount of all of the Convertible Notes and the accumulated interest thereon at the date of conversion (totaling $1.8 million) were converted at a conversion price of $0.67 per share into an aggregate of 2,709,018 shares of the Company&#x2019;s Series A Preferred Stock, which is convertible on a one-for-five basis into shares of our common stock. During the year ended December&#160;31, 2020, 111,548 shares of the Series A Preferred Stock were converted into 22,310 shares of common stock. No conversions occurred during the three months ended March&#160;31, 2021. On April 1, 2021, 1,721,023 shares of Series A Preferred Stock were converted into 344,205 shares of common stock. Please also refer to Note 11, &#x201c;Subsequent Events&#x201d;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Series A Preferred Stock was created by the filing of a Certificate of Designation with the Secretary of State of the State of Delaware on March 29, 2019, which designated 2,000,000 shares of the Company&#x2019;s preferred stock, par value $0.0001 per share, as Series A Preferred Stock (the &#x201c;Original Series A Certificate of Designation&#x201d;). On January 15, 2020 with prior stockholder approval, the Company amended the Certificate of Incorporation to increase the number of authorized shares of preferred stock to 5,000,000. The Original Series A Certificate of Designation was also amended on January 15, 2020, to increase the number of shares of preferred stock designated as Series A Preferred Stock to 3,300,000 (the Original Series A Certificate of Designation, as so amended, the &#x201c;Series A Certificate of Designation&#x201d;). &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Pursuant to the Series A Certificate of Designation, each holder of outstanding shares of Series A Preferred Stock is entitled to vote with holders of outstanding shares of common stock, voting together as a single class, with respect to any and all matters presented to the stockholders of the Company for their action or consideration, except as provided by law. In any such vote, each share of Series A Preferred Stock shall entitle its holder to a number of votes equal to 11.07% of the number of shares of common stock into which such share of Series A Preferred Stock is convertible.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Series A Preferred Stock (a) has a preference upon liquidation equal to $0.67 per share and then participates on an as-converted basis with the common stock with respect to any additional distributions, (b) shall receive any dividends declared and payable on our common stock on an as-converted basis, and (c) is convertible at the option of the holder into shares of our common stock on a one-for-five basis. On March 29, 2019, the Company also filed a Certificate of Elimination with respect to its authorized, but unissued, Series A Participating Preferred Stock, to return such shares to the status of undesignated preferred stock available for designation as Series A Preferred Stock.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The purchase agreement related to the Convertible Notes contains customary representations and warranties and provides for resale registration rights with respect to the shares of our common stock issuable upon conversion of the Series A Preferred Stock.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%"&gt;January 2020 Equity Offering&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;text-decoration:underline"&gt;Issuance of Common Stock and Warrants&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In January 2020, we completed a registered direct offering for the sale of 688,360 shares of our common stock to certain institutional investors, at a purchase price of $3.37 per share. We also sold, to the same institutional investors, warrants to purchase up to 688,360 shares of common stock at an exercise price of $3.37 per share in a concurrent private placement for a purchase price of $0.625 per warrant. We paid the placement agent commissions of $193&#160;thousand plus $50&#160;thousand in expenses in connection with the registered direct offering and the concurrent private placement and we also paid legal, accounting and other fees of $231&#160;thousand related to the offering. Total offering costs of $510&#160;thousand have been presented as a reduction of additional paid-in capital and have been netted within equity in the Condensed Consolidated Balance Sheet as of December&#160;31, 2020. In addition, we issued warrants to the placement agent to purchase up to 48,185 shares of common stock at an exercise price of $4.99 per share. Net proceeds to us from the sale of common stock and warrants were approximately $2.3 million. In accordance with the terms of the Iliad Note (as defined above in Note 7, &#x201c;Debt&#x201d;), 10% of the gross proceeds from the January 2020 Equity Offering ($275&#160;thousand) were used to make payments on the Iliad Note, of which $226&#160;thousand went towards the outstanding principal amount and the balance to interest.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Warrants to purchase an aggregate of 310,860 shares remain outstanding at March&#160;31, 2021 with a weighted average exercise price of $3.59 per share. The exercise of warrants could provide us with cash proceeds of up to $1.1 million in the aggregate if all warrants are exercised. During the three months ended March 31, 2021, 156,446 warrants were exercised resulting in total proceeds of $527 thousand. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;As of March&#160;31, 2021, we had the following outstanding warrants to purchase shares of common stock:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.398%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.570%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Number of Underlying Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Expiration&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Investor Warrants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;269,180&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$3.3700&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;January 13, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Placement Agent Warrants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41,680&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$4.9940&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;January 13, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;310,860&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;As of March 31, 2020, we had the following outstanding warrants to purchase shares of common stock:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.398%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.570%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Number of Underlying Shares*&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Expiration&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Investor Warrants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;688,360&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$3.3700&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;January 13, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Placement Agent Warrants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,185&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$4.9940&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;January 13, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;736,545&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%"&gt;Warrant Classification&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We account for common stock warrants as either liabilities or equity instruments depending on the specific terms of the warrant agreement. Common stock warrants that could require cash settlement are accounted for as liabilities and are revalued at fair value at each balance sheet date subsequent to the initial issuance. Changes in the fair market value of the warrant are reflected in the consolidated statement of operations as income (expense) based upon the change in fair value of warrants. Common stock warrants without cash settlement provisions are accounted for as equity and re-measurement at each balance sheet date is not required.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The warrants we issued in the January 2020 Equity Offering contained a provision for net cash settlement in the event that there is a fundamental transaction involving the Company (e.g., merger, sale of substantially all assets, tender offer, or share exchange). Due to this provision, the warrants were initially classified as liabilities, as opposed to equity, and were recorded at their fair values at each balance sheet date with fair value adjustments recognized as a component of earnings. During December 2020, the warrant holders agreed to a modification of the terms of their warrants which removed the potential cash settlement option upon the occurrence of a fundamental transaction. As such, during the fourth quarter of 2020, the warrant liability was reclassified into equity and the warrants are no longer subject to re-measurement at each balance sheet date. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%"&gt;Stock-based compensation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock-based compensation expense is attributable to stock options and restricted stock unit awards. For all stock-based awards, we recognize expense using a straight-line amortization method.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes stock-based compensation expense and the impact it had on operations for the periods presented (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.815%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.569%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Product development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Selling, general, and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;140&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Total unearned stock-based compensation was $0.6 million at March&#160;31, 2021, compared to $0.2 million at March&#160;31, 2020. These costs will be charged to expense and amortized on a straight-line basis in future periods. The weighted average period over which the unearned compensation at March&#160;31, 2021 is expected to be recognized is approximately 2.5 years.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Stock options&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair value of each stock option is estimated on the date of grant using the Black-Scholes option pricing model. Estimates utilized in the calculation include the expected life of the option, risk-free interest rate, and expected volatility, and are further detailed below. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.568%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of options issued*&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.26&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercise price*&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.48&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected life of options (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;92.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;*Prior year options have been restated for the 1-for-5 reverse stock split effective June 11, 2020.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of option activity under all outstanding stock incentive plans for the three months ended March 31, 2021 is presented as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.398%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.570%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Number of&lt;br/&gt;Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price Per&lt;br/&gt;Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Life (in years)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;221,450&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.45&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;72,120&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled/forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,459)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.77&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,500)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53.50&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;287,611&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.71&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.9&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Vested and expected to vest at March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;228,312&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.8&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Exercisable at March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,154&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Restricted stock units&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of restricted stock unit activity under all outstanding stock incentive plans for the three months ended March 31, 2021 is presented as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.398%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.570%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Restricted&lt;br/&gt;Stock Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&lt;br/&gt;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Life (in years)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,480&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.64&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.26&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,280)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12.40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.4&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i66985daeedc64cd7ab86f489ac45819c_I20200611"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTYzOTg0OA_c78535c0-ffa3-4b52-a19b-61af4e2ce49c"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i66985daeedc64cd7ab86f489ac45819c_I20200611"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTYzOTg1Mg_c78535c0-ffa3-4b52-a19b-61af4e2ce49c"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i66985daeedc64cd7ab86f489ac45819c_I20200611"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTYzOTg1Ng_359bb833-1538-48f3-9605-47dddb504b48"
      unitRef="shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <efoi:NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock
      contextRef="ib1abd927789c4c3db262bebaaf83998e_D20200116-20200116"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTYzOTkwMA_c359a33e-3873-4ef2-aaa5-0ec9bd3c6c77"
      unitRef="usd">1800000</efoi:NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i77ebeec1a11147f4bddd50d2befab70b_I20200116"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTYzOTkwNQ_c68191af-652d-4691-bbeb-981e6078b946"
      unitRef="usdPerShare">0.67</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="ib1abd927789c4c3db262bebaaf83998e_D20200116-20200116"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTYzOTkwOQ_7b0e42be-c343-436b-84fd-10868508598f"
      unitRef="shares">2709018</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:ConversionOfStockSharesConverted1
      contextRef="ic3472714a7ee4d70a2b3939e8552b242_D20200101-20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDE1Ng_b75d30ac-8fdc-433f-a0e5-2594a504b836"
      unitRef="shares">111548</us-gaap:ConversionOfStockSharesConverted1>
    <us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion
      contextRef="i992eeeca44564c2e8de058eec5fd99d2_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDIxOQ_3283338b-e6b0-4a73-a85b-837504f42f3a"
      unitRef="shares">22310</us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion>
    <us-gaap:ConversionOfStockSharesConverted1
      contextRef="i00ea0eba4f7d4d4f97ed3eac19a2d4a6_D20210401-20210401"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDMyMw_b3f1c1de-2ed1-41a6-932b-7e83fd6165ab"
      unitRef="shares">1721023</us-gaap:ConversionOfStockSharesConverted1>
    <us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion
      contextRef="i680c85489eaa462b88497e2441ad4b39_I20210401"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDM4Mg_b39d8c2f-ffdb-40ac-af3a-2c7447217ca2"
      unitRef="shares">344205</us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i5017ffc2879e4fab9f6a78f3dd698432_I20190329"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMzI5ODUzNDg5ODkyMg_f81607a1-d6ec-42b2-bf5a-6788f8b77fbc"
      unitRef="shares">2000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i09ca929212e44528ab26cccc51ad1c99_I20190329"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMzA5OQ_e75fb466-e00d-4173-8b10-6eec3aeb0546"
      unitRef="usdPerShare">0.0001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i25e4e149c9e645cea2591a854500fb8b_I20200115"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDQ3Mw_c0e0bece-23f7-4b49-9420-495089572c9c"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="iea1223b775ca41c6a6e0e6f61ac4d3d0_I20200115"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMzI5ODUzNDg5OTI1MQ_26ae92de-cffe-49fe-ae2e-8e410e07b67b"
      unitRef="shares">3300000</us-gaap:PreferredStockSharesAuthorized>
    <efoi:PercentageOfSeriesAPreferredStockEligibleToVote
      contextRef="i19e09cdb27e34ffdaa5038b9f496b299_D20200116-20200116"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDQ4Mg_3daa9d16-07e3-4ea3-b2e8-464ddecbbb5e"
      unitRef="number">0.1107</efoi:PercentageOfSeriesAPreferredStockEligibleToVote>
    <us-gaap:DebtInstrumentConvertibleConversionPrice1
      contextRef="i77ebeec1a11147f4bddd50d2befab70b_I20200116"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDQ4OA_c68191af-652d-4691-bbeb-981e6078b946"
      unitRef="usdPerShare">0.67</us-gaap:DebtInstrumentConvertibleConversionPrice1>
    <us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction
      contextRef="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMzI5ODUzNDg5OTM0Mg_76495a5d-f9dd-432e-97eb-c92216e92235"
      unitRef="shares">688360</us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction>
    <us-gaap:SaleOfStockPricePerShare
      contextRef="i80309835f493449a847d541559d6ff1d_I20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMzg0ODI5MDcxMzIyNA_52bb438d-a122-4806-baca-53d5f85f3ac8"
      unitRef="usdPerShare">3.37</us-gaap:SaleOfStockPricePerShare>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNTUxOA_14449526-8671-460a-8342-85de02dc0983"
      unitRef="shares">688360</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i80309835f493449a847d541559d6ff1d_I20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNTU2OA_5fea7f6a-4f2e-415b-a0a0-46a58c44b4bf"
      unitRef="usdPerShare">3.37</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ClassOfWarrantOrRightWarrantsIssuedPricePerShare
      contextRef="if2d2400bbdd445efa370a90af4ebc9a0_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNTYzOQ_e3681874-defe-4788-88d7-f7cfbb8f46d7"
      unitRef="usdPerShare">0.625</efoi:ClassOfWarrantOrRightWarrantsIssuedPricePerShare>
    <efoi:PaymentsForPlacementAgentCommissions
      contextRef="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNTY5OA_6b6dc465-57a8-4072-b6fa-232e0553f340"
      unitRef="usd">193000</efoi:PaymentsForPlacementAgentCommissions>
    <efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement
      contextRef="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNTcwNg_289e5823-dd3f-4790-adca-06e263362ff5"
      unitRef="usd">50000</efoi:PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement>
    <efoi:PaymentsForClearingFees
      contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNTg2MQ_7ca76c60-ab13-4792-831a-97b9c1f91164"
      unitRef="usd">231000</efoi:PaymentsForClearingFees>
    <us-gaap:PaymentsOfStockIssuanceCosts
      contextRef="i00eb0670d1e149a2a10c5ce329bb1fa2_D20200101-20201231"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MDUwNA_6219d965-8ef4-40ac-9f58-f0ce8512cda9"
      unitRef="usd">510000</us-gaap:PaymentsOfStockIssuanceCosts>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="if67d3908c010443e8813b89e0b9d317f_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjE0Mw_60fa2ab7-e9a1-44e8-b6f9-f3b2eaf3090d"
      unitRef="shares">48185</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i3474f10caa984249abced513511bd9c0_I20200131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjE5Mw_d70c0c0d-7bd1-4c56-bfdb-6767aabc32e4"
      unitRef="usdPerShare">4.99</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts
      contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjI4OA_b1c8ee82-1725-4f4b-80b7-6b520d53ed99"
      unitRef="usd">2300000</efoi:ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts>
    <efoi:DebtInstrumentProceedsToBePaidToLenderPercent
      contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjM0MA_95316db5-aa73-47aa-b3b5-d92e384ec340"
      unitRef="number">0.10</efoi:DebtInstrumentProceedsToBePaidToLenderPercent>
    <efoi:DebtInstrumentProceedsToBePaidToLenderPercent
      contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjM0MA_af756bb9-067e-44d0-aad9-5450870d78a7"
      unitRef="number">0.10</efoi:DebtInstrumentProceedsToBePaidToLenderPercent>
    <us-gaap:ProceedsFromIssuanceOrSaleOfEquity
      contextRef="ib438250335dd4372a2373f976a591fda_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjQwMw_e974408e-d05d-4340-8db9-368a4db9a8ab"
      unitRef="usd">275000</us-gaap:ProceedsFromIssuanceOrSaleOfEquity>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="i5b14b389eebc47d5bcc51f2dd4812ce8_D20200101-20200131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjQ2Mg_d09d255f-39e9-4325-8f36-15ea69271622"
      unitRef="usd">226000</us-gaap:RepaymentsOfNotesPayable>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjU3OA_a1b99d71-1a69-4166-a787-a72c2f31c7d3"
      unitRef="shares">310860</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjY1NQ_8230afa9-708c-4081-ab29-eb32e812672c"
      unitRef="usdPerShare">3.59</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <us-gaap:ProceedsFromIssuanceOfWarrants
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjczOQ_8ecb14c5-7456-4175-94bb-faf759d28b15"
      unitRef="usd">1100000</us-gaap:ProceedsFromIssuanceOfWarrants>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjgwNQ_5d8f0438-74f8-408b-af09-3fa1e6c31fe2"
      unitRef="shares">156446</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised>
    <us-gaap:ProceedsFromWarrantExercises
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfNjg2Mw_c5217cd1-c5bf-462f-860c-b01fd7eb2850"
      unitRef="usd">527000</us-gaap:ProceedsFromWarrantExercises>
    <us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTYxNg_3c20763e-aa43-4439-b44c-53c73abfef11">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;As of March&#160;31, 2021, we had the following outstanding warrants to purchase shares of common stock:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.398%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.570%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Number of Underlying Shares&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Expiration&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Investor Warrants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;269,180&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$3.3700&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;January 13, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Placement Agent Warrants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41,680&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$4.9940&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;January 13, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;310,860&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;As of March 31, 2020, we had the following outstanding warrants to purchase shares of common stock:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.398%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.570%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Number of Underlying Shares*&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Exercise Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Expiration&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Investor Warrants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;688,360&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$3.3700&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;January 13, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Placement Agent Warrants&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,185&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$4.9940&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;January 13, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;736,545&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i688eff7e70ff4f109664ebab2f07dd0f_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjEzMTQ3MmM2YmE3NTQ2ZDI5ODhmYWQzMzcyMjdjNTE5L3RhYmxlcmFuZ2U6MTMxNDcyYzZiYTc1NDZkMjk4OGZhZDMzNzIyN2M1MTlfMS0xLTEtMS0w_efbe5927-d570-4586-91ed-f4806dc0e337"
      unitRef="shares">269180</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="ie0fd88a0abe14e9e86e69687ad7c12e6_I20210331"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjEzMTQ3MmM2YmE3NTQ2ZDI5ODhmYWQzMzcyMjdjNTE5L3RhYmxlcmFuZ2U6MTMxNDcyYzZiYTc1NDZkMjk4OGZhZDMzNzIyN2M1MTlfMS0zLTEtMS0w_fcfb99c2-c375-4b15-8c69-4fba32824e4f"
      unitRef="usdPerShare">3.3700</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="ic8a5b48784f3454d8b3798eb20083704_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjEzMTQ3MmM2YmE3NTQ2ZDI5ODhmYWQzMzcyMjdjNTE5L3RhYmxlcmFuZ2U6MTMxNDcyYzZiYTc1NDZkMjk4OGZhZDMzNzIyN2M1MTlfMi0xLTEtMS0w_ec1f8ddd-8cf7-4ff1-901e-4853ea36f11c"
      unitRef="shares">41680</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i7b7525b9862f4b568f1afcd51170c828_I20210331"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjEzMTQ3MmM2YmE3NTQ2ZDI5ODhmYWQzMzcyMjdjNTE5L3RhYmxlcmFuZ2U6MTMxNDcyYzZiYTc1NDZkMjk4OGZhZDMzNzIyN2M1MTlfMi0zLTEtMS0wL3RleHRyZWdpb246NTRiZWQ5ZDBkMDdiNGEyMmExZDRiY2Y2Yzc0YWI5Y2FfNA_2f72caa5-fa36-4165-a114-1b751270c3cc"
      unitRef="usdPerShare">4.9940</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjEzMTQ3MmM2YmE3NTQ2ZDI5ODhmYWQzMzcyMjdjNTE5L3RhYmxlcmFuZ2U6MTMxNDcyYzZiYTc1NDZkMjk4OGZhZDMzNzIyN2M1MTlfMy0xLTEtMS0w_a1b99d71-1a69-4166-a787-a72c2f31c7d3"
      unitRef="shares">310860</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="ibc574a748cfb4936926327dcb115d007_D20200101-20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmNiYWIxM2ZhYzEzMTRkOTM4YjRiNzlhZTI0NjA2ZDhlL3RhYmxlcmFuZ2U6Y2JhYjEzZmFjMTMxNGQ5MzhiNGI3OWFlMjQ2MDZkOGVfMS0xLTEtMS0zMjQ5_5d47d81d-434b-47d6-801e-e156e3ea88fe"
      unitRef="shares">688360</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i102df05d8b4d484d854f73dd0afb12a3_I20200331"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmNiYWIxM2ZhYzEzMTRkOTM4YjRiNzlhZTI0NjA2ZDhlL3RhYmxlcmFuZ2U6Y2JhYjEzZmFjMTMxNGQ5MzhiNGI3OWFlMjQ2MDZkOGVfMS0zLTEtMS0zMjUx_543fe1ef-d2ff-44d6-bb44-f96e008d576e"
      unitRef="usdPerShare">3.3700</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="id5e82a695c8944f290e51261e35ca1b3_D20200101-20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmNiYWIxM2ZhYzEzMTRkOTM4YjRiNzlhZTI0NjA2ZDhlL3RhYmxlcmFuZ2U6Y2JhYjEzZmFjMTMxNGQ5MzhiNGI3OWFlMjQ2MDZkOGVfMi0xLTEtMS0zMjQ5_4c81e2ac-c288-40b0-bac0-5e03e9b49862"
      unitRef="shares">48185</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1
      contextRef="i7b7525b9862f4b568f1afcd51170c828_I20210331"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmNiYWIxM2ZhYzEzMTRkOTM4YjRiNzlhZTI0NjA2ZDhlL3RhYmxlcmFuZ2U6Y2JhYjEzZmFjMTMxNGQ5MzhiNGI3OWFlMjQ2MDZkOGVfMi0zLTEtMS0yMzA2_9d0bf74a-9a6a-4690-ad99-a20c31c0f4f1"
      unitRef="usdPerShare">4.9940</us-gaap:ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1>
    <efoi:ClassOfWarrantOrRightWarrantsIssued
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmNiYWIxM2ZhYzEzMTRkOTM4YjRiNzlhZTI0NjA2ZDhlL3RhYmxlcmFuZ2U6Y2JhYjEzZmFjMTMxNGQ5MzhiNGI3OWFlMjQ2MDZkOGVfMy0xLTEtMS0zMjQ5_9126e3e2-1e20-40c8-a962-c40a4841074b"
      unitRef="shares">736545</efoi:ClassOfWarrantOrRightWarrantsIssued>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTYzNA_4c24fcef-3295-418a-9d1a-0c82f92ba895">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes stock-based compensation expense and the impact it had on operations for the periods presented (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.815%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.569%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of sales&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Product development&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Selling, general, and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;132&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total stock-based compensation&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;140&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i52ef57e0d6f649c294e6b21e7d493741_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfMi0xLTEtMS0w_c21432da-e1e1-4d0f-8d21-c380753d3808"
      unitRef="usd">2000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i1274ca278bbb445b90395605a8206ee5_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfMi0zLTEtMS0w_034d825e-6f80-4069-ae12-30ae5ee882e1"
      unitRef="usd">1000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i02d886360698450a823175c9c4a4352e_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfMy0xLTEtMS0w_5e273457-eaec-4df0-af93-c33f46aff56f"
      unitRef="usd">6000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i185da9ffb81e4ff4b93e3ad77b4c1018_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfMy0zLTEtMS0w_081a1613-1587-47e8-8871-f6980c366300"
      unitRef="usd">1000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i0d1cfbd6b81949b6b7b0d2dfe9c96663_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfNC0xLTEtMS0w_89a567b0-0a07-426c-bcc3-57a8b3b030a2"
      unitRef="usd">132000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i4f887d6f2b3e447a9e37eacf99f2e6ac_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfNC0zLTEtMS0w_6c417526-a5d4-45f9-8bf8-bc618d6d21db"
      unitRef="usd">18000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfNS0xLTEtMS0w_f218637e-8fef-47b2-b212-db9dbbf58d6f"
      unitRef="usd">140000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmFiMzNmYmUwYmIzYjQxMWY5NDExZTU0ZGQ4Y2M4YjViL3RhYmxlcmFuZ2U6YWIzM2ZiZTBiYjNiNDExZjk0MTFlNTRkZDhjYzhiNWJfNS0zLTEtMS0w_fa8853ab-1f16-471b-a781-352abe508029"
      unitRef="usd">20000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MzE2OQ_5cc96d82-0143-4010-b202-6be0459dc43d"
      unitRef="usd">600000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfMTA5OTUxMTY0MzE3Ng_98213e76-f3f6-4e75-a9fd-b45c7683673b"
      unitRef="usd">200000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTAzMA_dd95637b-242d-4ae6-b31c-6c724dffd1a3">P2Y6M</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTYyNA_0a9141c9-66dc-4c00-827e-2df532514ee5">Estimates utilized in the calculation include the expected life of the option, risk-free interest rate, and expected volatility, and are further detailed below. &lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:64.966%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.400%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.568%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three months ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2020&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fair value of options issued*&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.26&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.12&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercise price*&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.48&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected life of options (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Risk-free interest rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.7&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;96.3&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;92.8&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;*Prior year options have been restated for the 1-for-5 reverse stock split effective June 11, 2020.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:SharePrice
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfMi0xLTEtMS0w_bcce00ec-c658-4ef9-9e92-5d1a3ee43699"
      unitRef="usdPerShare">4.26</us-gaap:SharePrice>
    <us-gaap:SharePrice
      contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfMi0zLTEtMS0w_3404db02-0c41-441f-9e96-6829a3b4483e"
      unitRef="usdPerShare">1.12</us-gaap:SharePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfMy0xLTEtMS0w_c94af4ff-95b6-4c21-9bd1-4fe5e402c7cd"
      unitRef="usdPerShare">5.51</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice
      contextRef="i63ccc98555614cfab54ffbdf8ae024fc_I20200331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfMy0zLTEtMS0w_0e1dde0f-9f49-4eb9-a587-ca37d48d3237"
      unitRef="usdPerShare">1.48</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNC0xLTEtMS0w_f9e17444-0b65-48ef-b55f-e7a6aa505412">P6Y2M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNC0zLTEtMS0w_9ed26b2f-9fa9-4ea0-a101-3d0e379a0d2f">P6Y1M6D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNS0xLTEtMS0w_903cf4d3-14c9-44ec-b937-2161be7b176a"
      unitRef="number">0.008</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNS0zLTEtMS0w_a4636e2b-3749-4fae-b7b6-57bbded49483"
      unitRef="number">0.007</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNi0xLTEtMS0w_7f9a8942-da7a-47dc-a4db-df34aeef93f0"
      unitRef="number">0.963</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNi0zLTEtMS0w_efe4582c-9172-4be9-abf4-1f95edbdfd53"
      unitRef="number">0.928</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNy0xLTEtMS0w_806584bc-b123-426b-8711-63a27e5092c5"
      unitRef="number">0.000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="i25cc70700a1249cc860b650b1569c291_D20200101-20200331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjdmY2FiZDQwNmM2YjQyMWQ4MjYyOWExMzUyZjRhYmUxL3RhYmxlcmFuZ2U6N2ZjYWJkNDA2YzZiNDIxZDgyNjI5YTEzNTJmNGFiZTFfNy0zLTEtMS0w_3c6bcd0c-e8ea-407f-9e7f-f838135fdbf4"
      unitRef="number">0.000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTYzNQ_26d09c53-ec6b-4220-8d29-85bb88f2272e">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of option activity under all outstanding stock incentive plans for the three months ended March 31, 2021 is presented as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.398%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.570%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Number of&lt;br/&gt;Options&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price Per&lt;br/&gt;Share&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Life (in years)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;221,450&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.45&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;72,120&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.51&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canceled/forfeited&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(4,459)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.77&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,500)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53.50&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;287,611&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.71&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.9&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Vested and expected to vest at March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;228,312&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3.68&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.8&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Exercisable at March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,154&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.25&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.1&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMS0xLTEtMS0w_b30912a7-8960-4868-bda6-e027b5f7ecd4"
      unitRef="shares">221450</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMS0zLTEtMS0w_529d58dc-bb7a-46c3-ad75-3b69b9508cec"
      unitRef="usdPerShare">3.45</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMi0xLTEtMS0w_1b494bf4-21c8-46e2-b9be-4eb3e6aaab10"
      unitRef="shares">72120</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMi0zLTEtMS0w_75ac31e8-68b4-4e88-8de4-0d9dfd853211"
      unitRef="usdPerShare">5.51</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNC0xLTEtMS0w_3d8a8bc3-4362-4a97-b756-e2cee9e2f7fd"
      unitRef="shares">4459</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNC0zLTEtMS0w_263bbe6d-0bbb-4b5d-ae36-dca6fa8b1795"
      unitRef="usdPerShare">2.77</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNS0xLTEtMS0w_f69aa448-5c5c-4ffc-9aa4-e924c4e0bbe0"
      unitRef="shares">1500</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNS0zLTEtMS0w_3cbfa716-231c-4f93-8231-1a797eca608b"
      unitRef="usdPerShare">53.50</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNi0xLTEtMS0w_5fa30ec4-eb9a-48cb-ab0d-a4d4e44d02e5"
      unitRef="shares">287611</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNi0zLTEtMS0w_ed3e2370-eb9e-4805-8a9a-45c57fef87e8"
      unitRef="usdPerShare">3.71</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfNi01LTEtMS0w_670d1629-be0d-4499-b907-56463be05f0b">P8Y10M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfOC0xLTEtMS0w_42c2b260-a1be-4742-ae0a-79def15d3819"
      unitRef="shares">228312</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfOC0zLTEtMS0w_9e213cda-6f96-4dac-8d02-087a49264bb8"
      unitRef="usdPerShare">3.68</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfOC01LTEtMS0w_efa46c08-129b-4324-ab5d-d1d19a755214">P8Y9M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMTAtMS0xLTEtMA_3fb6a889-6357-464b-a3ac-b62215458090"
      unitRef="shares">62154</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMTAtMy0xLTEtMA_fe60f532-9c70-42cb-8f54-8fe95f5ca22d"
      unitRef="usdPerShare">4.25</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOjI5NDk5MmRkMTExZTRiYjRiNTA5ZGNiNTE5OTkxMmQ3L3RhYmxlcmFuZ2U6Mjk0OTkyZGQxMTFlNGJiNGI1MDlkY2I1MTk5OTEyZDdfMTAtNS0xLTEtMA_81a239ab-4736-49e4-9441-a6a0353e717d">P8Y1M6D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RleHRyZWdpb246YjZlYjMzMGY0YzEyNDY4YzhjODEzNDI0MmMwNDAzNDZfOTYyMQ_80ace798-ef57-4f89-9d71-b0f273bceda9">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A summary of restricted stock unit activity under all outstanding stock incentive plans for the three months ended March 31, 2021 is presented as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:47.398%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.550%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:15.570%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Restricted&lt;br/&gt;Stock Units&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Grant&lt;br/&gt;Date&lt;br/&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Weighted&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Life (in years)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at December 31, 2020&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,480&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8.64&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.26&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,280)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12.40&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance at March 31, 2021&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;53,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5.37&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1.4&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="i7ce97b0111a9407fb3e025133e40dd13_I20201231"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfMS0xLTEtMS0w_8dccfec7-1fe8-4260-b98c-edcb56e16e27"
      unitRef="shares">4480</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfMS0zLTEtMS0w_2281482f-fd9d-4cee-8fed-806794515ea7"
      unitRef="usdPerShare">8.64</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfMi0xLTEtMS0w_2f8b3355-265f-42fe-9cb2-9906dd252567"
      unitRef="shares">50000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfMi0zLTEtMS0w_871a7a2f-aab0-4643-8a36-761c3b60df2b"
      unitRef="usdPerShare">5.26</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfMy0xLTEtMS0w_d0c4b19f-db7e-4cc8-bd1a-c618d2100ad7"
      unitRef="shares">1280</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfMy0zLTEtMS0w_67492103-5659-4001-b4c8-a4f4deb26192"
      unitRef="usdPerShare">12.40</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber
      contextRef="ifc53b698d0bb42419b6699f219dbaa83_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfNS0xLTEtMS0w_f2d166d7-5113-4802-90eb-e9ee0ff3bd9c"
      unitRef="shares">53200</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="ifc53b698d0bb42419b6699f219dbaa83_I20210331"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfNS0zLTEtMS0w_31469538-0a9f-4d4e-aeed-015ddcec4b92"
      unitRef="usdPerShare">5.37</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="ibee784cea4764c20b749e52ed6bd36a1_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83MC9mcmFnOmI2ZWIzMzBmNGMxMjQ2OGM4YzgxMzQyNDJjMDQwMzQ2L3RhYmxlOmY4YzAwYzExOWMzYjQzZjA5YjFhNzcwMjBmNTg1ZmRlL3RhYmxlcmFuZ2U6ZjhjMDBjMTE5YzNiNDNmMDliMWE3NzAyMGY1ODVmZGVfNS01LTEtMS0w_52e1c752-97c9-4375-a033-9f2085e9c97e">P1Y4M24D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83Ni9mcmFnOmRkM2Y2ZGM3ZjE2MTQwYzNiZmI3NWY2ZmU0MjAwMDVkL3RleHRyZWdpb246ZGQzZjZkYzdmMTYxNDBjM2JmYjc1ZjZmZTQyMDAwNWRfMzI5ODUzNDg4Mzc3MQ_5cf21638-ce7f-46db-a817-1ba8b11e1ee0">COMMITMENTS AND CONTINGENCIES&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Purchase Commitments&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of March&#160;31, 2021, we had approximately $4.2&#160;million in outstanding purchase commitments for inventory. Of this amount, approximately $1.4&#160;million is expected to ship in the second quarter of 2021, with the balance expected to ship in the third quarter of 2021 and thereafter.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:PurchaseObligation
      contextRef="ia2ed7d6c1695406e89547655ae276683_I20210331"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83Ni9mcmFnOmRkM2Y2ZGM3ZjE2MTQwYzNiZmI3NWY2ZmU0MjAwMDVkL3RleHRyZWdpb246ZGQzZjZkYzdmMTYxNDBjM2JmYjc1ZjZmZTQyMDAwNWRfMTA5OTUxMTYyODIwNg_9ed1eb4f-2e66-4b4e-959a-490677f8fbd1"
      unitRef="usd">4200000</us-gaap:PurchaseObligation>
    <us-gaap:LongTermPurchaseCommitmentAmount
      contextRef="i35678c0361cb4b5c9871138c4ded16f7_D20210401-20210630"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83Ni9mcmFnOmRkM2Y2ZGM3ZjE2MTQwYzNiZmI3NWY2ZmU0MjAwMDVkL3RleHRyZWdpb246ZGQzZjZkYzdmMTYxNDBjM2JmYjc1ZjZmZTQyMDAwNWRfMzI5ODUzNDg4Mzc3NA_1891c76f-7eb1-40e8-ac2a-d0cd7ffe6fbb"
      unitRef="usd">1400000</us-gaap:LongTermPurchaseCommitmentAmount>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="i612079b69ed741e48b442b22207bd746_D20210101-20210331"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMTYyMA_bac66562-5b09-49cd-84e7-592d2149507d">SUBSEQUENT EVENTS&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Streeterville Note&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As disclosed in Note 7, &#x201c;Debt&#x201d;, on April 27, 2021, we entered into the Streeterville Note Purchase Agreement with Streeterville pursuant to which the Company sold and issued to Streeterville Note in the principal amount of approximately $1.7&#160;million. The Streeterville Note was issued with an original issue discount of $194&#160;thousand and Streeterville paid a purchase price of $1.5&#160;million for the Streeterville Note, after deduction of $15&#160;thousand of Streeterville transaction expenses.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Streeterville Note has a maturity date of April 27, 2023, and accrues interest at 8% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding under the Note at a premium, which is 5% during the first three months and 10% percent thereafter. Prepayments at the reduced rate in the first three months are limited to 50% of the outstanding balance. Beginning on the first day of the calendar month following the date that is six &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;months after the date of purchase, Streeterville may require the Company to redeem up to $205&#160;thousand of the Streeterville Note in any calendar month. The Company has the right on three occasions to defer all redemptions that Streeterville could otherwise require the Company to make during any calendar month. Each exercise of this deferral right by the Company will increase the amount outstanding under the Streeterville Note by 1.5%.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Inventory Facility Increase&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As disclosed in Note 7, &#x201c;Debt&#x201d;, the Company entered into the Inventory Facility with the IF lender on August 11, 2020. Borrowings under the original Inventory Facility were permitted up to the lower of (i) $3.0 million and (ii) a borrowing base determined from time to time based on the value of the Company&#x2019;s eligible inventory, valued at 75% of inventory costs or 85% of the inventory net orderly liquidation value, less the availability reserves. On April 20, 2021, the Company and the IF lender entered into an amendment to the Inventory Loan Agreement to increase the maximum amount that may be available to the Company from $3.0 million previously to $3.5 million, subject to the borrowing base as set forth in the Inventory Loan Agreement.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Preferred Stock Conversion&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On April 1, 2021, 1,721,023 shares of Series A Preferred Stock were converted into 344,205 common shares. The Series A Preferred Stock was held by a Schedule 13D ownership group (under Section 13(d)(3) of the Exchange Act and Rule 13d-5 promulgated thereunder) that includes Fusion Park LLC and 5 Elements Global Fund L.P. (controlled affiliates of James Tu, the Company&#x2019;s Executive Chairman and Chief Executive Officer), as well as Brilliant Start Enterprise Inc. and Jag International Ltd. (controlled affiliates of Gina Huang, a member of the Company&#x2019;s Board of Directors). Upon the conversion of their respective shares of Series A Preferred Stock, Fusion Park and Brilliant Start received 184,851 and 159,354 shares, respectively, of the Company&#x2019;s common stock.&lt;/span&gt;&lt;/div&gt;</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTYwNw_42631a16-17a4-4c62-9579-061e864ca073"
      unitRef="usd">1700000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentUnamortizedDiscount
      contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTYzNQ_986625fd-9084-4437-9f87-e4f470f6a59b"
      unitRef="usd">194000</us-gaap:DebtInstrumentUnamortizedDiscount>
    <us-gaap:ProceedsFromIssuanceOfDebt
      contextRef="i50ba0c2a78a741cbbd1175c3c8e51ca4_D20210427-20210427"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTYyMQ_1e422f31-279d-4d96-8264-3c0569d667c6"
      unitRef="usd">1500000</us-gaap:ProceedsFromIssuanceOfDebt>
    <us-gaap:DeferredFinanceCostsGross
      contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY1MA_f74604cc-5c25-482c-8d66-5791cec3d3e0"
      unitRef="usd">15000</us-gaap:DeferredFinanceCostsGross>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY2NA_3cf576e9-c26b-4a43-9d95-5f8a4d04e0b9"
      unitRef="number">0.08</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <efoi:DebtInstrumentPrepaymentPremiumPercent
      contextRef="i17a762aaa3344791adeeb85e487fb039_D20210427-20210427"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY2OA_121d7566-0129-4d99-b388-224dc87856d4"
      unitRef="number">0.05</efoi:DebtInstrumentPrepaymentPremiumPercent>
    <efoi:DebtInstrumentPrepaymentPremiumPercent
      contextRef="i2f7c05c5c42d4a7a95b92e6d57c7db6f_D20210427-20210427"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY3Mg_78ad7b8d-588b-4121-ad41-b1cde4945e7f"
      unitRef="number">0.10</efoi:DebtInstrumentPrepaymentPremiumPercent>
    <efoi:DebtPrepaymentMaximumPercentage
      contextRef="i17a762aaa3344791adeeb85e487fb039_D20210427-20210427"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY3Nw_71d5c253-b4f1-4541-a7f4-f4210cf47830"
      unitRef="number">0.50</efoi:DebtPrepaymentMaximumPercentage>
    <efoi:DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption
      contextRef="i50ba0c2a78a741cbbd1175c3c8e51ca4_D20210427-20210427"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzg0ODI5MDcwNTU5Nw_b4453818-af65-470d-896d-f4e56002f762">P6M</efoi:DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption>
    <efoi:DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount
      contextRef="i61a322798f454174b23bfa9b494c02fd_I20210427"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY4Mg_744a620c-c3ff-4a2f-86a4-c457ee0b4542"
      unitRef="usd">205000</efoi:DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount>
    <efoi:DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals
      contextRef="i50ba0c2a78a741cbbd1175c3c8e51ca4_D20210427-20210427"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzg0ODI5MDcwNTYxNg_19ee0bd2-84eb-47f3-b3bb-f87844bd2056"
      unitRef="deferral">3</efoi:DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals>
    <efoi:NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption
      contextRef="i17a762aaa3344791adeeb85e487fb039_D20210427-20210427"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg5MTY5Nw_6d13d350-fd55-4499-922e-58a9028acbdf"
      unitRef="number">0.015</efoi:NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i2e571f4b493a41619ace396495da7565_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMTA5OTUxMTYzMzI4NQ_05f75e64-ae0c-4787-b911-92a3a32e174a"
      unitRef="usd">3000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <efoi:LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent
      contextRef="i2e571f4b493a41619ace396495da7565_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMTA5OTUxMTYzMzQxMA_888497bb-af7c-49f1-b32b-0dbf593920ae"
      unitRef="number">0.75</efoi:LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent>
    <efoi:LineOfCreditFacilityBorrowingCapacityInventoryValuePercent
      contextRef="i2e571f4b493a41619ace396495da7565_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMTA5OTUxMTYzMzQzNg_de28b478-c0f9-498e-b9b0-1bcea22d312f"
      unitRef="number">0.85</efoi:LineOfCreditFacilityBorrowingCapacityInventoryValuePercent>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i2e571f4b493a41619ace396495da7565_I20200811"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg4OTM1NQ_7fb0d962-fd0e-417e-af63-cd563c8bd64d"
      unitRef="usd">3000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i7b82fe3611ec4325a53fba6ad96f5792_I20210420"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg4OTM0Mw_392d449b-0b4b-4e76-b9e2-95ede691d36c"
      unitRef="usd">3500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:ConversionOfStockSharesConverted1
      contextRef="i00ea0eba4f7d4d4f97ed3eac19a2d4a6_D20210401-20210401"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMTA5OTUxMTYzMDk5NQ_b3f1c1de-2ed1-41a6-932b-7e83fd6165ab"
      unitRef="shares">1721023</us-gaap:ConversionOfStockSharesConverted1>
    <us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion
      contextRef="i680c85489eaa462b88497e2441ad4b39_I20210401"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMTA5OTUxMTYzMTQ1Ng_b39d8c2f-ffdb-40ac-af3a-2c7447217ca2"
      unitRef="shares">344205</us-gaap:ConvertiblePreferredStockSharesIssuedUponConversion>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="iff32125b13c7454683df0d63faf61ae3_D20210401-20210401"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg4OTMyNQ_a2a0afad-9672-4a71-9a6a-76e944244822"
      unitRef="shares">184851</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <us-gaap:StockIssuedDuringPeriodSharesNewIssues
      contextRef="i582bd18c1c3c482099ca1731004fb30f_D20210401-20210401"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl83OS9mcmFnOmZkYTdkYzllZGViYjRmYTRhYjMzYTRmNTA2YWYyNmUyL3RleHRyZWdpb246ZmRhN2RjOWVkZWJiNGZhNGFiMzNhNGY1MDZhZjI2ZTJfMzI5ODUzNDg4OTMzNA_05bf059d-6693-4304-a4a9-c1e5909ae330"
      unitRef="shares">159354</us-gaap:StockIssuedDuringPeriodSharesNewIssues>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc
          xlink:href="#id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtNi0xLTEtMA_77728eb0-8b35-4ad5-83eb-85013861160a"
          xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtNi0xLTEtMA_77728eb0-8b35-4ad5-83eb-85013861160a"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0yLTEtMS0w_712932eb-82a7-40bc-8a6f-f3402dbeb862"
          xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0yLTEtMS0w_712932eb-82a7-40bc-8a6f-f3402dbeb862"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNS02LTEtMS0w_447a037c-ae2e-483f-9d5f-c90a8f20c03a"
          xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNS02LTEtMS0w_447a037c-ae2e-483f-9d5f-c90a8f20c03a"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNS0yLTEtMS0w_85c12ce7-51a9-4a19-8abb-260b030a4235"
          xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNS0yLTEtMS0w_85c12ce7-51a9-4a19-8abb-260b030a4235"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNi02LTEtMS0w_bfedf842-57f1-489c-913c-ef55255d7cad"
          xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNi02LTEtMS0w_bfedf842-57f1-489c-913c-ef55255d7cad"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNi02LTEtMS0xMzc_61837e39-d192-430b-b0c5-f5955d7860bf"
          xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNi02LTEtMS0xMzc_61837e39-d192-430b-b0c5-f5955d7860bf"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTAtNi0xLTEtMA_57bfde58-c0d7-4fb4-a6b3-d43585ac2a14"
          xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTAtNi0xLTEtMA_57bfde58-c0d7-4fb4-a6b3-d43585ac2a14"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy02LTEtMS0w_de5f3def-89b2-4472-8f54-948c3db66ab8"
          xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy02LTEtMS0w_de5f3def-89b2-4472-8f54-948c3db66ab8"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMi0xLTEtMA_83e4d7dd-40c0-4d8f-b2ae-4bb9417fce42"
          xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMi0xLTEtMA_83e4d7dd-40c0-4d8f-b2ae-4bb9417fce42"
          xlink:type="locator"/>
        <link:footnote id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b" xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">*Shares outstanding for prior periods have been restated for the 1-for-5 reverse stock split effective June 11, 2020.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTMtNi0xLTEtMA_77728eb0-8b35-4ad5-83eb-85013861160a"
          xlink:to="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMy0yLTEtMS0w_712932eb-82a7-40bc-8a6f-f3402dbeb862"
          xlink:to="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNS02LTEtMS0w_447a037c-ae2e-483f-9d5f-c90a8f20c03a"
          xlink:to="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNS0yLTEtMS0w_85c12ce7-51a9-4a19-8abb-260b030a4235"
          xlink:to="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfNi02LTEtMS0w_bfedf842-57f1-489c-913c-ef55255d7cad"
          xlink:to="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfNi02LTEtMS0xMzc_61837e39-d192-430b-b0c5-f5955d7860bf"
          xlink:to="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMTAtNi0xLTEtMA_57bfde58-c0d7-4fb4-a6b3-d43585ac2a14"
          xlink:to="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmRiM2JlNWEwYTdmNzQ1YWU4ODY2ODE0MmExMDNkNzVlL3RhYmxlcmFuZ2U6ZGIzYmU1YTBhN2Y3NDVhZTg4NjY4MTQyYTEwM2Q3NWVfMy02LTEtMS0w_de5f3def-89b2-4472-8f54-948c3db66ab8"
          xlink:to="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RhYmxlOmUyNjM0Yjc5NTE3MjQ1ZDJiMTUxM2Q3NmViN2M4ZjllL3RhYmxlcmFuZ2U6ZTI2MzRiNzk1MTcyNDVkMmIxNTEzZDc2ZWI3YzhmOWVfMTEtMi0xLTEtMA_83e4d7dd-40c0-4d8f-b2ae-4bb9417fce42"
          xlink:to="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8yOC9mcmFnOjgxZTFjZGRlZmQ4NjRmNDA4MDQyODc5MjdmNDBkM2EyL3RleHRyZWdpb246ODFlMWNkZGVmZDg2NGY0MDgwNDI4NzkyN2Y0MGQzYTJfMzI5ODUzNDg4NDYzMQ_ddbbf96b-52fb-4d91-899a-d4fcb2b27f2b"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjctMS0xLTEtMA_f1e9198e-6dae-467f-9e1c-484110a64f83"
          xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjctMS0xLTEtMA_f1e9198e-6dae-467f-9e1c-484110a64f83"
          xlink:type="locator"/>
        <link:loc
          xlink:href="#id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjctMy0xLTEtMA_a8856013-009f-4f56-8215-8c618471a643"
          xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjctMy0xLTEtMA_a8856013-009f-4f56-8215-8c618471a643"
          xlink:type="locator"/>
        <link:footnote id="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjgtMC0xLTEtMA_069d9d97-b79c-4362-a491-34deaa1ac2d4" xlink:label="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjgtMC0xLTEtMA_069d9d97-b79c-4362-a491-34deaa1ac2d4" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">* Shares outstanding for prior periods have been restated for the 1-for-5 reverse stock split effective June 11, 2020.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjctMS0xLTEtMA_f1e9198e-6dae-467f-9e1c-484110a64f83"
          xlink:to="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjgtMC0xLTEtMA_069d9d97-b79c-4362-a491-34deaa1ac2d4"
          xlink:type="arc"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjctMy0xLTEtMA_a8856013-009f-4f56-8215-8c618471a643"
          xlink:to="id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl8xOS9mcmFnOjE2NzVlZTBlNDI3MjRjYTNhOTBiNmYwZDRhNzA2NDRkL3RhYmxlOmFjNmM3MzdiNzVjMTRhNTI4Y2IzM2M4NWY2ZWU3YzBhL3RhYmxlcmFuZ2U6YWM2YzczN2I3NWMxNGE1MjhjYjMzYzg1ZjZlZTdjMGFfMjgtMC0xLTEtMA_069d9d97-b79c-4362-a491-34deaa1ac2d4"
          xlink:type="arc"/>
    </link:footnoteLink>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674512404472">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover Page - shares<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>May 10, 2021</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Mar. 31,  2021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-36583<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">ENERGY FOCUS, INC/DE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">94-3021850<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">32000&#160;Aurora&#160;Road<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressAddressLine2', window );">Entity Address, Address Line Two</a></td>
<td class="text">Suite B<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Solon<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">OH<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">44139<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">(440)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">715-1300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, par value $0.0001 per share<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">EFOI<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,027,271<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000924168<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented.  If there is no historical data in the report, use the filing date. The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an quarterly report.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-Q<br> -Number 240<br> -Section 308<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentQuarterlyReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Address Line 2 such as Street or Suite number</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674510510712">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets - USD ($)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash</a></td>
<td class="nump">$ 548,000<span></span>
</td>
<td class="nump">$ 1,836,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Trade accounts receivable, less allowances of $14 and $8, respectively</a></td>
<td class="nump">1,492,000<span></span>
</td>
<td class="nump">2,021,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">7,515,000<span></span>
</td>
<td class="nump">5,641,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DepositsAssetsCurrent', window );">Short-term deposits</a></td>
<td class="nump">784,000<span></span>
</td>
<td class="nump">796,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid and other current assets</a></td>
<td class="nump">778,000<span></span>
</td>
<td class="nump">782,000<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">11,117,000<span></span>
</td>
<td class="nump">11,076,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">482,000<span></span>
</td>
<td class="nump">420,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">676,000<span></span>
</td>
<td class="nump">794,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredOperatingLeaseRightOfUseAsset', window );">Restructured lease right-of-use assets</a></td>
<td class="nump">54,000<span></span>
</td>
<td class="nump">107,000<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">12,329,000<span></span>
</td>
<td class="nump">12,397,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">3,437,000<span></span>
</td>
<td class="nump">2,477,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Accrued liabilities</a></td>
<td class="nump">177,000<span></span>
</td>
<td class="nump">45,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedProfessionalFeesCurrent', window );">Accrued legal and professional fees</a></td>
<td class="nump">19,000<span></span>
</td>
<td class="nump">149,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedEmployeeBenefitsCurrent', window );">Accrued payroll and related benefits</a></td>
<td class="nump">787,000<span></span>
</td>
<td class="nump">885,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedSalesCommissionCurrent', window );">Accrued sales commissions</a></td>
<td class="nump">29,000<span></span>
</td>
<td class="nump">95,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringReserveCurrent', window );">Accrued restructuring</a></td>
<td class="nump">5,000<span></span>
</td>
<td class="nump">11,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualCurrent', window );">Accrued warranty reserve</a></td>
<td class="nump">239,000<span></span>
</td>
<td class="nump">227,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Deferred revenue</a></td>
<td class="nump">73,000<span></span>
</td>
<td class="nump">72,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities</a></td>
<td class="nump">609,000<span></span>
</td>
<td class="nump">598,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredOperatingLeaseLiabilityCurrent', window );">Restructured lease liabilities</a></td>
<td class="nump">85,000<span></span>
</td>
<td class="nump">168,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityCurrent', window );">Finance lease liabilities</a></td>
<td class="nump">3,000<span></span>
</td>
<td class="nump">3,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_PaymentProtectionProgramCurrent', window );">PPP loan</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">529,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Credit line borrowings, net of loan origination fees</a></td>
<td class="nump">3,416,000<span></span>
</td>
<td class="nump">2,298,000<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">8,879,000<span></span>
</td>
<td class="nump">7,557,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liabilities, net of current portion</a></td>
<td class="nump">172,000<span></span>
</td>
<td class="nump">318,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityNoncurrent', window );">Finance lease liabilities, net of current portion</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_PaymentProtectionProgramNoncurrent', window );">PPP loan, net of current maturities</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">266,000<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">9,051,000<span></span>
</td>
<td class="nump">8,142,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>STOCKHOLDERS' EQUITY</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, par value $0.0001 per share</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, par value $0.0001 per share</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">135,778,000<span></span>
</td>
<td class="nump">135,113,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss</a></td>
<td class="num">(3,000)<span></span>
</td>
<td class="num">(3,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Accumulated deficit</a></td>
<td class="num">(132,497,000)<span></span>
</td>
<td class="num">(130,855,000)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total stockholders' equity</a></td>
<td class="nump">3,278,000<span></span>
</td>
<td class="nump">4,255,000<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and stockholders' equity</a></td>
<td class="nump">$ 12,329,000<span></span>
</td>
<td class="nump">$ 12,397,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_PaymentProtectionProgramCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Payment Protection Program, Current</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_PaymentProtectionProgramCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_PaymentProtectionProgramNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Payment Protection Program, Noncurrent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_PaymentProtectionProgramNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredOperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Operating Lease, Liability, Current</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredOperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredOperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Operating Lease, Right-Of-Use Asset</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredOperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121593590&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6676-107765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121593590&amp;loc=d3e4531-111522<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedEmployeeBenefitsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations, excluding pension and other postretirement benefits, incurred through that date and payable for perquisites provided to employees pertaining to services received from them. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6935-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6911-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedEmployeeBenefitsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedProfessionalFeesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for professional fees, such as for legal and accounting services received. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6911-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6935-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedProfessionalFeesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedSalesCommissionCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for sales commissions. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6911-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6935-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedSalesCommissionCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=d3e637-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669686-108580<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=d3e681-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapitalCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapitalCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6801-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6676-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121556615&amp;loc=SL49130531-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121556615&amp;loc=SL49130532-203044<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130549-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DepositsAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value of amounts transferred to third parties for security purposes that are expected to be returned or applied towards payment within one year or during the operating cycle, if shorter.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepositsAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6676-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559654&amp;loc=d3e5710-111685<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LinesOfCreditCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The carrying value as of the balance sheet date of the current portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LinesOfCreditCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6911-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e7018-107765<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6935-107765<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringReserveCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of known and estimated obligations associated with exit from or disposal of business activities or restructurings pursuant to a duly authorized plan, which are expected to be paid in the next twelve months or in the normal operating cycle if longer. Costs of such activities include those for one-time termination benefits, termination of an operating lease or other contract, consolidating or closing facilities, relocating employees, and costs associated with an ongoing benefit arrangement, but excludes costs associated with the retirement of a long-lived asset.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringReserveCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cumulative amount of the reporting entity's undistributed earnings or deficit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=121370832&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount as of the balance sheet date of the aggregate standard product warranty liability that is expected to be paid within one year or the normal operating cycle, if longer. Does not include the balance for the extended product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=27010918&amp;loc=d3e74512-122707<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674430310072">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Parentheticals) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Trade accounts receivable, less allowances</a></td>
<td class="nump">$ 14<span></span>
</td>
<td class="nump">$ 8<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value (in usd per share)</a></td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, authorized (in shares)</a></td>
<td class="nump">5,000,000<span></span>
</td>
<td class="nump">5,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred stock, issued (in shares)</a></td>
<td class="nump">2,597,470<span></span>
</td>
<td class="nump">2,597,470<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred stock, outstanding (in shares)</a></td>
<td class="nump">2,597,470<span></span>
</td>
<td class="nump">2,597,470<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in usd per share)</a></td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, authorized (in shares)</a></td>
<td class="nump">50,000,000<span></span>
</td>
<td class="nump">50,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, issued (in shares)</a></td>
<td class="nump">3,682,816<span></span>
</td>
<td class="nump">3,525,374<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, outstanding (in shares)</a></td>
<td class="nump">3,682,816<span></span>
</td>
<td class="nump">3,525,374<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=us-gaap_ConvertiblePreferredStockMember', window );">Series A Convertible Preferred Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, authorized (in shares)</a></td>
<td class="nump">3,300,000<span></span>
</td>
<td class="nump">3,300,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121611835&amp;loc=d3e5074-111524<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121599878&amp;loc=SL82895884-210446<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementClassOfStockAxis=us-gaap_ConvertiblePreferredStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=us-gaap_ConvertiblePreferredStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674429802920">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Operations (Unaudited) - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>Income Statement [Abstract]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 2,637<span></span>
</td>
<td class="nump">$ 3,783<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of sales</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,084<span></span>
</td>
<td class="nump">2,751<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">553<span></span>
</td>
<td class="nump">1,032<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Product development</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">653<span></span>
</td>
<td class="nump">282<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general, and administrative</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,218<span></span>
</td>
<td class="nump">2,027<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringCosts', window );">Restructuring</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(19)<span></span>
</td>
<td class="num">(14)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,852<span></span>
</td>
<td class="nump">2,295<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Loss from operations</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(2,299)<span></span>
</td>
<td class="num">(1,263)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherIncomeAndExpensesAbstract', window );"><strong>Other expenses (income):</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InterestExpense', window );">Interest expense</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">127<span></span>
</td>
<td class="nump">133<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Gain on forgiveness of PPP loan</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(801)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueAdjustmentOfWarrants', window );">Gain from change in fair value of warrants</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">0<span></span>
</td>
<td class="num">(873)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other expenses</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">17<span></span>
</td>
<td class="nump">18<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">$ (1,642)<span></span>
</td>
<td class="num">$ (541)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasicAndDilutedAbstract', window );"><strong>Net loss per common share - basic and diluted</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare', window );">Net loss (in usd per share)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">$ (0.45)<span></span>
</td>
<td class="num">$ (0.18)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted average shares of common stock outstanding:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted', window );">Basic and diluted (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">3,612<span></span>
</td>
<td class="nump">3,086<span></span>
</td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">* Shares outstanding for prior periods have been restated for the 1-for-5 reverse stock split effective June 11, 2020.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasicAndDilutedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasicAndDilutedAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueAdjustmentOfWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (income) related to adjustment to fair value of warrant liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section 25<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=109262497&amp;loc=d3e20148-110875<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAdjustmentOfWarrants</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12317-112629<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) from continuing operations per each basic and diluted share of common stock or unit when the per share amount is the same for both basic and diluted shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=119993939&amp;loc=d3e28555-108399<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (210.5-03(11))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669625-108580<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherIncomeAndExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherIncomeAndExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after cash payment, of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9031-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9038-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Average number of shares or units issued and outstanding that are used in calculating basic and diluted earnings per share (EPS).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674429043768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Operations (Unaudited) (Parenthetical)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 11, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1', window );">Reverse stock split ratio</a></td>
<td class="nump">0.2<span></span>
</td>
<td class="nump">0.2<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Ratio applied to the conversion of stock split, for example but not limited to, one share converted to two or two shares converted to one.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SAB TOPIC 4.C)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187143-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteStockSplitConversionRatio1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674429605096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Comprehensive Loss (Unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Statement of Comprehensive Income [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (1,642)<span></span>
</td>
<td class="num">$ (541)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTaxAbstract', window );"><strong>Other comprehensive income:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Foreign currency translation adjustments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Comprehensive loss</a></td>
<td class="num">$ (1,642)<span></span>
</td>
<td class="num">$ (541)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=d3e557-108580<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669625-108580<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669619-108580<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTaxAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669625-108580<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4569643-111683<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4569616-111683<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674430713160">
<tr>
<th class="tl" colspan="2" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Changes in Stockholders' Equity (Unaudited) - USD ($)<br></strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Preferred Stock</div></th>
<th class="th"><div>Preferred Stock</div></th>
<th class="th">
<div>Preferred Stock </div>
<div>Preferred Stock</div>
</th>
<th class="th" colspan="2"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-in Capital</div></th>
<th class="th">
<div>Additional Paid-in Capital </div>
<div>Preferred Stock</div>
</th>
<th class="th"><div>Accumulated Other Comprehensive Loss</div></th>
<th class="th"><div>Accumulated Deficit</div></th>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance at the beginning of the period (in shares) at Dec. 31, 2019</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,486,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at the beginning of the period at Dec. 31, 2019</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 3,996,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ 128,873,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (3,000)<span></span>
</td>
<td class="num">$ (124,874,000)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Issuance of common stock under employee stock option and stock purchase plans (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Issuance of common stock under employee stock option and stock purchase plans</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease', window );">Issuance of common stock and warrants (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">688,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants', window );">Issuance of common stock and warrants</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">2,749,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">2,749,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts', window );">Offering costs on issuance of common stock and warrants</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(474,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(474,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued', window );">Warrant liability</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(1,636,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(1,636,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities', window );">Conversion of notes to preferred stock (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,709,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities', window );">Conversion of notes to preferred stock</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,769,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,769,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Stock-based compensation</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">20,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">20,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperations', window );">Net loss from continuing operations</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(541,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(541,000)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance at the end of the period (in shares) at Mar. 31, 2020</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,709,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,179,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at the end of the period at Mar. 31, 2020</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">5,883,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">131,301,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(3,000)<span></span>
</td>
<td class="num">(125,415,000)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance at the beginning of the period (in shares) at Dec. 31, 2020</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,597,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,525,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at the beginning of the period at Dec. 31, 2020</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">4,255,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">135,113,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(3,000)<span></span>
</td>
<td class="num">(130,855,000)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans', window );">Issuance of common stock under employee stock option and stock purchase plans (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan', window );">Issuance of common stock under employee stock option and stock purchase plans</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised', window );">Issuance of common stock upon the exercise of warrants (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">156,446<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">156,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueNewIssues', window );">Issuance of common stock upon the exercise of warrants</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 527,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">527,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Common stock withheld in lieu of income tax withholding on vesting of restricted stock units (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Common stock withheld in lieu of income tax withholding on vesting of restricted stock units</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(2,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="num">(2,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition', window );">Stock-based compensation</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">140,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">140,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperations', window );">Net loss from continuing operations</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">(1,642,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,642,000)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balance at the end of the period (in shares) at Mar. 31, 2021</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,597,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,682,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at the end of the period at Mar. 31, 2021</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="nump">$ 3,278,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
<td class="nump">$ 135,778,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (3,000)<span></span>
</td>
<td class="num">$ (132,497,000)<span></span>
</td>
</tr>
<tr><td colspan="11"></td></tr>
<tr><td colspan="11"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">*Shares outstanding for prior periods have been restated for the 1-for-5 reverse stock split effective June 11, 2020.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in additional paid in capital (APIC) resulting from direct costs associated with issuing stock. Includes, but is not limited to, legal and accounting fees and direct costs associated with stock issues under a shelf registration.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in additional paid in capital (APIC) resulting from the issuance of warrants. Includes allocation of proceeds of debt securities issued with detachable stock purchase warrants.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 25<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109126253&amp;loc=d3e4724-112606<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from continuing operations attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4613673-111683<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInStockholdersEquityRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of non-option equity instruments exercised by participants.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued which are neither cancelled nor held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Value of preferred stock and warrants for common stock issued.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued during the period as a result of the conversion of convertible securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-30)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued during the period as a result of an employee stock purchase plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the period in the number of shares issued.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The gross value of stock issued during the period upon the conversion of convertible securities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Aggregate change in value for stock issued during the period as a result of employee stock purchase plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=27010918&amp;loc=d3e74512-122707<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674430663432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Changes in Stockholders' Equity (Unaudited) (Parenthetical)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jun. 11, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1', window );">Reverse stock split ratio</a></td>
<td class="nump">0.2<span></span>
</td>
<td class="nump">0.2<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Ratio applied to the conversion of stock split, for example but not limited to, one share converted to two or two shares converted to one.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SAB TOPIC 4.C)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187143-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteStockSplitConversionRatio1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674512527768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Cash Flows (Unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash flows from operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperations', window );">Net loss</a></td>
<td class="num">$ (1,642)<span></span>
</td>
<td class="num">$ (541)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net loss to net cash used in (provided by) operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Gain on forgiveness of PPP loan</a></td>
<td class="num">(801)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">47<span></span>
</td>
<td class="nump">46<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation</a></td>
<td class="nump">140<span></span>
</td>
<td class="nump">20<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueAdjustmentOfWarrants', window );">Change in fair value of warrant liabilities</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(873)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Provision for doubtful accounts receivable</a></td>
<td class="nump">6<span></span>
</td>
<td class="num">(12)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryWriteDown', window );">Provision for slow-moving and obsolete inventories</a></td>
<td class="nump">89<span></span>
</td>
<td class="num">(78)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_IncreaseDecreaseInProvisionForWarranties', window );">Provision for warranties</a></td>
<td class="nump">12<span></span>
</td>
<td class="nump">44<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet', window );">Amortization of loan discounts and origination fees</a></td>
<td class="nump">38<span></span>
</td>
<td class="nump">38<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities (Sources / (Uses) of cash):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="nump">532<span></span>
</td>
<td class="nump">445<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(1,963)<span></span>
</td>
<td class="nump">1,546<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInDepositOtherAssets', window );">Short-term deposits</a></td>
<td class="nump">12<span></span>
</td>
<td class="num">(240)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid and other assets</a></td>
<td class="nump">4<span></span>
</td>
<td class="nump">53<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="nump">951<span></span>
</td>
<td class="num">(152)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Accrued and other liabilities</a></td>
<td class="num">(209)<span></span>
</td>
<td class="nump">222<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInDeferredRevenue', window );">Deferred revenue</a></td>
<td class="nump">1<span></span>
</td>
<td class="num">(14)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities', window );">Total adjustments</a></td>
<td class="num">(1,141)<span></span>
</td>
<td class="nump">1,045<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash (used in) provided by operating activities</a></td>
<td class="num">(2,783)<span></span>
</td>
<td class="nump">504<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Acquisitions of property and equipment</a></td>
<td class="num">(109)<span></span>
</td>
<td class="num">(47)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(109)<span></span>
</td>
<td class="num">(47)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities (Sources / (Uses) of cash):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants', window );">Proceeds from the issuance of common stock and warrants</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">2,750<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromWarrantExercises', window );">Proceeds from the exercise of warrants</a></td>
<td class="nump">527<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsOfStockIssuanceCosts', window );">Offering costs paid on the issuance of common stock and warrants</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(474)<span></span>
</td>
<td class="num">$ (510)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeasePrincipalPayments', window );">Principal payments under finance lease obligations</a></td>
<td class="num">(1)<span></span>
</td>
<td class="num">(1)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Common stock withheld in lieu of income tax withholding on vesting of restricted stock units</a></td>
<td class="num">(2)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfNotesPayable', window );">Payments on the Iliad Note</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(226)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash provided by financing activities</a></td>
<td class="nump">1,604<span></span>
</td>
<td class="nump">2,104<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net (decrease) increase in cash and restricted cash</a></td>
<td class="num">(1,288)<span></span>
</td>
<td class="nump">2,561<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and restricted cash, beginning of period</a></td>
<td class="nump">2,178<span></span>
</td>
<td class="nump">692<span></span>
</td>
<td class="nump">692<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and restricted cash, end of period</a></td>
<td class="nump">890<span></span>
</td>
<td class="nump">3,253<span></span>
</td>
<td class="nump">2,178<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAbstract', window );"><strong>Classification of cash and restricted cash:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 548<span></span>
</td>
<td class="nump">$ 1,836<span></span>
</td>
<td class="nump">$ 2,911<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestrictedCash', window );">Restricted cash held in other assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">342<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">342<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and restricted cash</a></td>
<td class="nump">890<span></span>
</td>
<td class="nump">3,253<span></span>
</td>
<td class="nump">$ 692<span></span>
</td>
<td class="nump">$ 890<span></span>
</td>
<td class="nump">$ 2,178<span></span>
</td>
<td class="nump">$ 3,253<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_AustinCreditFacilityMember', window );">Austin Credit Facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities (Sources / (Uses) of cash):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit', window );">Net proceeds from (payment on) credit line borrowings</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">55<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_NewCreditFacilitiesMember', window );">Credit Facilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities (Sources / (Uses) of cash):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit', window );">Net proceeds from (payment on) credit line borrowings</a></td>
<td class="nump">$ 1,080<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_IncreaseDecreaseInProvisionForWarranties">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Increase (Decrease) In Provision For Warranties</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_IncreaseDecreaseInProvisionForWarranties</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_ProceedsFromIssuanceOfCommonStockAndWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Proceeds from Issuance of Common Stock and Warrants</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_ProceedsFromIssuanceOfCommonStockAndWarrants</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The sum of adjustments which are added to or deducted from net income or loss, including the portion attributable to noncontrolling interest, to reflect cash provided by or used in operating activities, in accordance with the indirect cash flow method.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfDeferredLoanOriginationFeesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net increase(decrease) in interest income during the period representing the allocation of deferred loan origination fees less deferred loan origination costs using the effective interest method over the term of the debt arrangement to which they pertain taking into account the effect of prepayments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 35<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121604886&amp;loc=d3e8622-111531<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfDeferredLoanOriginationFeesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3521-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3044-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=SL98516268-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 230<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=98513438&amp;loc=d3e33268-110906<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueAdjustmentOfWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (income) related to adjustment to fair value of warrant liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section 25<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=109262497&amp;loc=d3e20148-110875<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAdjustmentOfWarrants</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeasePrincipalPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for principal payment on finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeasePrincipalPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12317-112629<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of income (loss) from continuing operations attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=SL4613673-111683<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInDeferredRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInDeferredRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInDepositOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in moneys or securities given as security including, but not limited to, contract, escrow, or earnest money deposits, retainage (if applicable), deposits with clearing organizations and others, collateral, or margin deposits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInDepositOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in prepaid expenses, and assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWriteDown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of loss from reductions in inventory due to subsequent measurement adjustments, including, but not limited to, physical deterioration, obsolescence, or changes in price levels.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4542-108314<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWriteDown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3521-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3536-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfStockIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for cost incurred directly with the issuance of an equity security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfStockIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3213-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromRepaymentsOfLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The net cash inflow or cash outflow from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with either short term or long term maturity that is collateralized (backed by pledge, mortgage or other lien in the entity's assets).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e24072-122690<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromRepaymentsOfLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromWarrantExercises">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the amount received from holders exercising their stock warrants.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromWarrantExercises</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (reversal of expense) for expected credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121599337&amp;loc=SL82919249-210447<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for a borrowing supported by a written promise to pay an obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestrictedCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash restricted as to withdrawal or usage. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=SL98516268-108586<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(1)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_AustinCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=efoi_AustinCreditFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_NewCreditFacilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=efoi_NewCreditFacilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674427352312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Nature of Operations<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Organization, Consolidation and Presentation of Financial Statements [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NatureOfOperations', window );">Nature of Operations</a></td>
<td class="text">NATURE OF<span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">OPERATIONS</span><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Energy Focus, Inc. engages primarily in the design, development, manufacturing, marketing and sale of energy-efficient lighting systems and controls and recently announced development of ultraviolet-C light disinfection (&#8220;UVCD&#8221;) products. We develop, market and sell high quality light-emitting diode (&#8220;LED&#8221;) lighting products and UVCD products and controls in the commercial market and military maritime market (&#8220;MMM&#8221;). Our mission is to enable our customers to run their facilities and offices with greater energy efficiency, productivity, and human health through advanced LED retrofit and UVCD solutions. Our goal is to be the LED and human-centric lighting (&#8220;HCL&#8221;) technology and market leader for the most demanding applications where performance, quality, value (high quality at an affordable price), environmental impact and health are considered paramount. We specialize in LED lighting retrofit by replacing fluorescent, high-intensity discharge lighting and other types of lamps in institutional buildings for primarily indoor lighting applications with our innovative, high-quality commercial and military tubular LED (&#8220;TLED&#8221;), as well as other LED and lighting control products. On October 14, 2020, we also announced the launch of our UVCD product portfolio which is being brought to market in 2021.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On June 11, 2020, in accordance with previous stockholder approval, our Board of Directors effected a 1-for-5 (the &#8220;Split Ratio&#8221;) reverse stock split of the Company&#8217;s common stock, par value $0.0001 per share. The reverse stock split became effective immediately upon the filing of the Certificate of Amendment to the Company&#8217;s Certificate of Incorporation, as amended (the &#8220;Certificate of Incorporation&#8221;), with the Delaware Secretary of State (the &#8220;Effective Time&#8221;). At the Effective Time, every five shares of common stock issued and outstanding automatically combined into one validly issued, fully paid and non-assessable share of common stock. No fractional shares were issued as a result of the reverse stock split. The $0.0001 par value per share of common stock and other terms of the common stock were not affected by the reverse stock split. The number of authorized shares of common stock under the Certificate of Incorporation remained unchanged at 50,000,000 shares. Proportional adjustments were made to the conversion and exercise prices of our outstanding warrants and stock options, and to the number of shares issued and issuable under our stock incentive plans in connection with the reverse stock split. The information presented in the financial statements for all prior periods have been retroactively adjusted to reflect the reverse stock split. Preferred shares outstanding were not affected by the reverse stock split and, as such, those shares have not been adjusted.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NatureOfOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -URI http://asc.fasb.org/topic&amp;trid=2134479<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NatureOfOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674432168184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Basis of Presentation and Summary of Significant Accounting Policies</a></td>
<td class="text"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">BASIS OF PRESENTATION AND</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</span><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis of presentation</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The significant accounting policies of our Company, which are summarized below, are consistent with accounting principles generally accepted in the United States (&#8220;U.S. GAAP&#8221;) and reflect practices appropriate to the business in which we operate. Unless indicated otherwise, the information in the Notes to the Consolidated Financial Statements relates to our operations.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have prepared the accompanying financial data for the three months ended March&#160;31, 2021 and 2020 pursuant to the rules and regulations of the United States Securities and Exchange Commission. Certain information and footnote disclosures normally included in financial statements prepared in accordance with U.S. GAAP have been condensed or omitted pursuant to such rules and regulations. The accompanying financial data and information should be read in conjunction with our Annual Report on Form 10-K for the year ended December&#160;31, 2020 (&#8220;2020 Annual Report&#8221;). The Condensed Consolidated Balance Sheet as of December&#160;31, 2020 has been derived from the audited consolidated financial statements at that date but does not include all of the information and footnotes required by U.S. GAAP for complete financial statements.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the opinion of management, the accompanying condensed consolidated financial statements contain all normal and recurring adjustments necessary to present fairly our Condensed Consolidated Balance Sheets as of March&#160;31, 2021 and December&#160;31, 2020, Condensed Consolidated Statements of Operations for the three months ended March&#160;31, 2021 and 2020, Condensed Consolidated Statements of Comprehensive Loss for the three months ended March&#160;31, 2021 and 2020, Condensed Consolidated Statements of Changes in Stockholders&#8217; Equity for the three months ended March&#160;31, 2021 and 2020, and Condensed Consolidated Statements of Cash Flows for the three months ended March&#160;31, 2021 and 2020.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Use of estimates</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of financial statements in accordance with U.S. GAAP requires management to make estimates and assumptions that affect the amounts reported in our financial statements and accompanying notes. Management bases its estimates on historical experience and various other assumptions believed to be reasonable. Although these estimates are based on management&#8217;s best knowledge of current events and actions that may impact us in the future, actual results may vary from the estimates. Estimates include, but are not limited to, the establishment of reserves for accounts receivable, sales returns, inventory obsolescence and warranty claims; the useful lives of property and equipment; valuation allowance for net deferred taxes; the cost and offsetting income related to sub-leased property; and stock-based compensation. In addition, estimates and assumptions associated with the determination of the fair value of financial instruments and evaluation of long-lived assets for impairment requires considerable judgment. Actual results could differ from those estimates and such differences could be material.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Certain risks and concentrations</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have certain customers whose net sales individually represented 10% or more of our total net sales, or whose net trade accounts receivable balance individually represented 10% or more of our total net trade accounts receivable; we have certain suppliers, which individually represent 10% or more of our total purchases, or whose trade accounts payable balance individually represented 10% or more of our total trade accounts payable balance, as follows:</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March 31, 2021, sales to our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 50% and 11% of net sales, respectively. When sales to our primary distributor for the U.S. Navy are combined with sales to shipbuilders for the U.S. Navy, total net sales of products for the U.S. Navy comprised approximately 57% of net sales for the same period. For the three months ended March 31, 2020, sales to our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 38% and 15% of net sales, respectively. When sales to our primary distributor for the U.S. Navy are combined with sales to shipbuilders for the U.S. Navy, total net sales of products for the U.S. Navy comprised approximately 46% of net sales for the same period.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 45% and 16% of net trade accounts receivable, respectively, at March&#160;31, 2021. At December 31, 2020, our primary distributor to the U.S. Navy accounted for 28% of our net trade accounts receivable and a shipbuilder for the U.S. Navy accounted for 21% of our net trade accounts receivable. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">One offshore supplier accounted for approximately 26% and 22%, respectively, of our total expenditures for the three months ended March 31, 2021 and March&#160;31, 2020. At March&#160;31, 2021, this same offshore supplier and one domestic supplier accounted for approximately 39% and 10% of our trade accounts payable balance, respectively. At December 31, 2020 this same offshore supplier accounted for approximately 44% of our trade accounts payable balance.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Recent accounting pronouncements</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2016, the Financial Accounting Standards Board issued Accounting Standard Update No. 2016-13, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, which significantly changes the accounting for credit losses on instruments within its scope. The new guidance introduces an approach based on expected losses to estimate credit losses on certain financial instruments, including trade receivables, and requires an entity to recognize an allowance based on its estimate of expected credit losses rather than incurred losses. For smaller reporting companies, this standard will be effective for interim and annual periods starting after December 15, 2022 and will generally require adoption on a modified retrospective basis. We are in the process of evaluating the impact of the standard. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Revenue</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales include revenues from sales of products and shipping and handling charges, net of estimates for product returns. Revenue is measured at the amount of consideration we expect to receive in exchange for the transferred products. We recognize revenue at the point in time when we transfer the promised products to the customer and the customer obtains control over the products. Distributors&#8217; obligations to us are not contingent upon the resale of our products. We recognize revenue for shipping and handling charges at the time the goods are shipped to the customer, and the costs of outbound </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">freight are included in cost of sales. We provide for product returns based on historical return rates. While we incur costs for sales commissions to our sales employees and outside agents, we recognize commission costs concurrent with the related revenue, as the amortization period is less than one year. We do not incur any other incremental costs to obtain contracts with our customers. Our product warranties are assurance-type warranties, which promise the customer that the products are as specified in the contract. Therefore, the product warranties are not a separate performance obligation and are accounted for as described below. Sales taxes assessed by governmental authorities are accounted for on a net basis and are excluded from net sales.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides a disaggregation of product net sales for the periods presented (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.975%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.912%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.063%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">913&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,736&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MMM products</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,724&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,047&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total net sales</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,637&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,783&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Accounts Receivable</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our trade accounts receivable consist of amounts billed to and currently due from customers. Our customers are currently concentrated in the United States. In the normal course of business, we extend unsecured credit to our customers related to the sale of our products. Credit is extended to customers based on an evaluation of the customer&#8217;s financial condition and the amounts due are stated at their estimated net realizable value. We utilize an account receivable insurance program with a high credit worthy insurance company where we have the large majority of the accounts receivable insured with a portion of self-retention. This third party also provides creditworthiness ratings and metrics that significantly assist us in evaluating the creditworthiness of both existing and new customers. We maintain allowances for sales returns and doubtful accounts receivable to provide for the estimated number of accounts receivable that will not be collected. The allowance is based on an assessment of customer creditworthiness and historical payment experience, the age of outstanding receivables, and performance guarantees to the extent applicable. Past due amounts are written off when our internal collection efforts have been unsuccessful, and payments subsequently received on such receivables are credited to the allowance for doubtful accounts. We do not generally require collateral from our customers.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our standard payment terms with customers are net 30 days from the date of shipment, and we do not generally offer extended payment terms to our customers, but exceptions are made in some cases to certain customers or with particular orders. Accordingly, we do not adjust trade accounts receivable for the effects of financing, as we expect the period between the transfer of product to the customer and the receipt of payment from the customer to be in line with our standard payment terms.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Geographic information</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All of our long-lived fixed assets are located in the United States. Sales attributable to customers outside the United States for both the three months ended March 31, 2021, and three months ended March 31, 2020, were less than 1%. The geographic location of our net sales is derived from the destination to which we ship the product.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Net loss per share </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic loss per share is computed by dividing net loss available to common stockholders by the weighted average number of shares of common stock outstanding during the period, excluding the effects of any potentially dilutive securities. Diluted loss per share gives effect to all dilutive potential shares of common stock outstanding during the period. Dilutive potential shares of common stock consist of incremental shares upon the exercise of stock options, warrants and convertible securities, unless the effect would be anti-dilutive.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The following table presents a reconciliation of basic and diluted loss per share computations (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.597%"><tr><td style="width:1.0%"/><td style="width:73.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.053%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.876%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.056%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Numerator:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,642)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(541)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Denominator:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted average shares of common stock outstanding *</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,612&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,086&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="12" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;&#160;* Shares outstanding for prior periods have been restated for the 1-for-5 stock split effective June 11, 2020.</span></div></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the net loss we incurred for the three months ended March 31, 2021, options, restricted share units, warrants and convertible securities representing approximately 79&#160;thousand, 2&#160;thousand, 106&#160;thousand and 519&#160;thousand shares of common stock, respectively, were excluded from the basic loss per share calculation, because their inclusion would have been anti-dilutive.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the net loss we incurred for the three months ended March 31, 2020, options and restricted share units representing approximately 0.3&#160;thousand and 1&#160;thousand shares of common stock, respectively, and convertible securities representing approximately 452&#160;thousand shares of common stock were excluded from the basic loss per share calculation as their inclusion would have been anti-dilutive. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Product warranties</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Through March&#160;31, 2016, we warranted finished goods against defects in material and workmanship under normal use and service for periods generally between <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDA0OQ_e66bff4c-194e-44bc-a3ef-eb779268857d">one</span> and five years. Beginning April&#160;1, 2016, we warrant our commercial TLEDs, the troffer luminaires, and certain Globe Lights for a period of ten years (excluding RedCap</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7.8pt;font-style:italic;font-weight:400;line-height:120%;position:relative;top:-4.2pt;vertical-align:baseline">&#174;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and our Battery Backup TLEDs), and all other LED products for five years per the Terms and Conditions outlined on our website. Beginning in October 2019, TLEDs (excluding RedCap</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">&#174;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">) are primarily warranted for ten years, certain D-Series lamps are warranted for either ten years or five years based on the customer&#8217;s choice at time of purchase, and the warranty for all of our other products is five years. Warranty settlement costs consist of actual amounts expensed for warranty, which are largely a result of the cost of replacement products provided to our customers. A liability for the estimated future costs under product warranties is maintained for products under warranty based on the actual claims incurred to date and the estimated nature, frequency, and costs of future claims. These estimates are inherently uncertain and changes to our historical or projected experience may cause material changes to our warranty reserves in the future. We continuously review the assumptions related to the adequacy of our warranty reserve, including product failure rates, and make adjustments to the existing warranty liability when there are changes to these estimates or the underlying replacement product costs, or the warranty period expires. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes warranty activity for the periods presented (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:74.425%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.761%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.764%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at beginning of period</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">227&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">195&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Warranty accruals for current period sales</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustments to existing warranties</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">In kind settlements made during the period</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(19)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accrued warranty reserve at end of period</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">239&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">240&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Financial Instruments</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In January 2020, we completed a registered direct offering for the sale of 688,360 shares of our common stock to certain institutional investors, at a purchase price of $3.37 per share. We also sold, to the same institutional investors, warrants to purchase up to 688,360 shares of common stock at an exercise price of $3.37 per share in a concurrent private placement for a purchase price of $0.625 per warrant. We paid the placement agent commissions of $193&#160;thousand plus $50&#160;thousand in expenses in connection with the registered direct offering and the concurrent private placement and we also paid legal, accounting and other fees of $231&#160;thousand related to the offering. Total offering costs of $510&#160;thousand have been presented as a reduction of additional paid-in capital and have been netted within equity in the Condensed Consolidated Balance Sheet as of December&#160;31, 2020. In addition, we issued warrants to the placement agent to purchase up to 48,185 shares of common stock at an exercise price of $4.99 per share. Net proceeds to us from the sale of common stock and warrants (the &#8220;January 2020 Equity Offering&#8221;) were approximately $2.3 million. In accordance with the terms of the Iliad Note (as defined below in Note 7, &#8220;Debt&#8221;), 10% of the gross proceeds from the January 2020 Equity Offering ($275&#160;thousand) were used to make payments on the Iliad Note, of which $226&#160;thousand went towards the outstanding principal amount and the balance to interest.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Warrants to purchase an aggregate of 310,860 shares remain outstanding at March&#160;31, 2021 with a weighted average exercise price of $3.59 per share. The exercise of warrants could provide us with cash proceeds of up to $1.1 million in the aggregate. During the three months ended March 31, 2021, 156,446 warrants were exercised resulting in total proceeds of $527 thousand. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Due to a potential cash settlement upon occurrence of a fundamental transaction within the warrant agreement, the warrants were initially classified as liabilities, as opposed to equity, and were recorded at their fair values at each balance sheet date for the first three quarters of 2020. During December 2020, the warrant holders agreed to a modification of the terms of their warrants which removed the potential cash settlement option upon the occurrence of a fundamental transaction. As such, during the fourth quarter of 2020, the warrant liability was reclassified into equity and the warrants are no longer subject to re-measurement at each balance sheet date. Please also refer to Note 9, &#8220;Stockholders&#8217; Equity&#8221;.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;text-decoration:underline">Fair Value Measurements</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The fair value hierarchy prioritizes the inputs to valuation techniques used to measure fair value, giving the highest priority to unadjusted quoted prices in active markets for identical assets or liabilities (Level 1 measurements) and the lowest priority to unobservable inputs (Level 3 measurements). The three levels of the fair value hierarchy are described below. We classify the inputs used to measure fair value into the following hierarchy:</span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:8.509%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:89.291%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 1</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Unadjusted quoted prices in active markets for identical assets or liabilities.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 2</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Unadjusted quoted prices in active markets for similar assets or liabilities, or unadjusted quoted prices for identical or similar assets or liabilities in markets that are not active, or inputs other than quoted prices that are observable for the asset or liability.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 3</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Unobservable inputs for the asset or liability.</span></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The following table provides a summary of the financial assets and liabilities measured at fair value on a recurring basis as of March 31, 2020 (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:20.221%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.912%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.151%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.770%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.151%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.770%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.151%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.774%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements at March&#160;31, 2020 Using</span></div></td></tr><tr style="height:17pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance as of</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets<br/>&#160;(Level 1)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Other Observable Inputs <br/>(Level 2)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs<br/>&#160;(Level 3)</span></td></tr><tr style="height:23pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline">Description</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Warrant liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">763&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">763&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The carrying amounts of certain financial instruments including cash, accounts receivable, accounts payable, and accrued liabilities approximate fair value due to their short maturities. Based on borrowing rates currently available to us for loans with similar terms, the carrying value of borrowings under our revolving credit facilities also approximates fair value.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">A financial instrument&#8217;s level within the fair value hierarchy is based on the lowest level of any input that is significant to the fair value measurement. In determining the appropriate levels, we perform a detailed analysis of the assets and liabilities whose fair value is measured on a recurring basis. We review and reassess the fair value hierarchy classifications on a quarterly basis. Changes from one quarter to the next related to the observability of inputs in a fair value measurement may result in a reclassification between fair value hierarchy levels. There were no reclassifications for all periods presented.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The estimated fair value of warrants accounted for as liabilities, representing a level 3 fair value measure, was determined on the issuance date and subsequently marked to market at each financial reporting date. We use the Black-Scholes valuation model to value the warrant liabilities at fair value. The fair value is estimated using the expected volatility based on our historical volatility and is determined using probability weighted-average assumptions, when appropriate.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The following inputs were used at March 31, 2020:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:42.893%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.866%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.001%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.167%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.001%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.272%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expected</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Risk-Free</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expected</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Volatility</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Interest Rate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Life</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Warrants with greater than one-year remaining term</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">97.05%</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">0.34% - 0.36%</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">4.29 -  4.79 years</span></div></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">A roll-forward of fair value measurements using significant unobservable inputs (Level 3) for the warrants is as follows (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:79.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.270%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended March 31, 2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Balance January 1, 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Issuance of warrants, January 2020</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">1,636&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Gain from change in fair value of warrants</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">(873)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Balance March 31, 2020</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">763&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI http://asc.fasb.org/topic&amp;trid=2122369<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674433712680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringAndRelatedActivitiesAbstract', window );"><strong>Restructuring and Related Activities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock', window );">Restructuring</a></td>
<td class="text">RESTRUCTURING<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March&#160;31, 2021 and March&#160;31, 2020, we recorded net restructuring credits of approximately $19 thousand and $14 thousand, respectively, related to the costs and offsetting sub-lease income and accretion expense for the remaining lease obligation for our former New York, New York office. For additional information regarding the restructuring actions taken as part of the restructuring plans, please refer to Note 3, &#8220;Restructuring,&#8221; included under Item&#160;8, &#8220;Financial Statements and Supplementary Data,&#8221; of our 2020 Annual Report.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our restructuring liabilities consist of estimated ongoing costs related to long-term operating lease obligations, which the Company exited. The recorded value of the ongoing lease obligations is based on the remaining lease term and payment amount, discounted to present value. Changes in subsequent periods resulting from a revision to either the timing or the amount of estimated cash flows over the future period are measured using the credit adjusted, risk free rate that was used to measure the restructuring liabilities initially. Please also refer to Note 6, &#8220;Leases&#8221;.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a reconciliation of the beginning and ending balances of our restructuring liability as it relates to the restructuring plans (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:58.359%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.869%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.400%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.872%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at December 31, 2020 and 2019</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accretion of lease obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at March 31, 2021 and 2020</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a reconciliation of the ending balance of our restructuring liability at March&#160;31, 2021 to the balance sheet:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:58.359%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.869%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.400%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.872%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at March 31, 2021 and 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less, short-term restructuring liability</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term restructuring liability, included in other liabilities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the restructuring actions and initiatives described above, we have reduced our operating expenses to be more commensurate with our sales volumes. However, we continue to incur losses and have a substantial accumulated deficit, and </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">substantial doubt about our ability to continue as a going concern continues to exist at March&#160;31, 2021. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Throughout 2020, as well as the first quarter 2021, we have continued to evaluate and assess strategic options as we seek to achieve profitability. We plan to achieve profitability through growing our sales by continuing to execute on our multi-channel sales strategy that targets key verticals, such as government, healthcare, education, and commercial and industrial, complemented by our marketing outreach campaigns and expanding channel partnerships. We also plan to continue to develop and launch advanced lighting and lighting control technologies and introduce impactful new products such as EnFocus&#8482;, a breakthrough lighting control platform we officially launched during the second quarter of 2020. In addition, during the last quarter of 2020, we announced newly developed UVCD products for both consumer, as well as commercial and industrial markets, that are expected to be available in the third quarter of 2021.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As described in Note 9, &#8220;Stockholders&#8217; Equity,&#8221; we also raised approximately $2.3 million of net proceeds upon the issuance of common stock and warrants in connection with the January 2020 Equity Offering. Additionally, in August 2020, we entered into two new revolving credit facilities as described in Note 7, &#8220;Debt,&#8221; which allow for expanded borrowing capacity, which capacity was further increased by an April 20, 2021 amendment to one of the facilities. See Note 11, &#8220;Subsequent Events&#8221;. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The restructuring and cost cutting initiatives implemented during 2020, as well as the January 2020 Equity Offering that significantly strengthened our balance sheet, the PPP loan we obtained in April 2020 and our enhanced debt capacity due to the debt refinancing in August 2020 and capacity increase and additional bridge financing in April 2021, were designed to allow us to effectively execute these strategies. However, our efforts may not occur as quickly as we envision or be successful due to the long sales cycle in our industry, the corresponding time required to ramp up sales from new products and markets into this sales cycle, the timing of introductions of additional new products, significant competition, potential sales volatility given our customer concentration, and the recent and lingering economic impact from the COVID-19 pandemic that had significantly diminished the interest and activities for lighting retrofit projects until occupancy returns to more normal levels, among other factors. As a result, we will continue to review and pursue selected external funding sources to ensure adequate financial resources to execute across the timelines required to achieve these objectives including, but not limited to, the following:</span></div><div><span><br/></span></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">obtaining financing from traditional or non-traditional investment capital organizations or individuals; </span></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">obtaining funding from the sale of our common stock or other equity or debt instruments; and</span></div><div style="padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">obtaining debt financing with lending terms that more closely match our business model and capital needs.</span></div><div style="padding-left:36pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There can be no assurance that we will obtain funding on acceptable terms, in a timely fashion, or at all. Obtaining additional funding contains risks, including:</span></div><div style="padding-left:72pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">additional equity financing may not be available to us on satisfactory terms, and any equity we are able to issue could lead to dilution for current stockholders and have rights, preferences and privileges senior to our common stock;</span></div><div style="padding-left:72pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">loans or other debt instruments may have terms and/or conditions, such as interest rate, restrictive covenants, conversion features, refinancing demands, and control or revocation provisions, which are not acceptable to management or our board of directors; and</span></div><div style="padding-left:72pt;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:32.5pt">the current environment in the capital markets combined with our capital constraints may prevent us from being able to obtain adequate debt financing.</span></div><div style="padding-left:36pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">If we fail to obtain the required additional financing to sustain our business before we are able to produce levels of revenue to meet our financial needs, we will need to delay, scale back or eliminate our growth plans and further reduce our operating costs and headcount, each of which would have a material adverse effect on our business, future prospects, and financial condition. A lack of additional funding could also result in our inability to continue as a going concern and force us to sell certain assets or discontinue or curtail our operations and, as a result, investors in the Company could lose their entire investment.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Considering both quantitative and qualitative information, we continue to believe that the combination of our plans to obtain additional external funding, timely re-organizational actions, current financial position, liquid resources, obligations due or anticipated within the next year, development and implementation of an excess inventory reduction plan, plans and initiatives in our research and development, product development and sales and marketing, and development of potential channel partnerships, if adequately executed, will provide us with an ability to finance our operations through the next twelve months and will mitigate the substantial doubt about our ability to continue as a going concern. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On August 17, 2020, we received a letter from the Listing Qualifications staff (the &#8220;Staff&#8221;) of The Nasdaq Stock Market (&#8220;Nasdaq&#8221;) notifying us that we were no longer in compliance with Nasdaq Listing Rule 5550(b)(1), which requires listed companies to maintain stockholders&#8217; equity of at least $2,500,000 if they do not meet the alternative compliance standards relating to the market value of listed securities or net income from continuing operations (the &#8220;Minimum Stockholders&#8217; Equity Rule&#8221;). Our Quarterly Report on Form 10-Q for the quarterly period ended June 30, 2020, filed on August 13, 2020, reflected that our stockholders&#8217; equity as of June 30, 2020 was $1,714,000. In addition, as of August 13, 2020, we did not meet the alternative compliance standards relating to the market value of listed securities or net income from continuing operations. On October 5, 2020, based on our timely submission of our plan to regain compliance, Nasdaq granted us an extension through February 15, 2021 to regain compliance with the Minimum Stockholders&#8217; Equity Rule, subject to our compliance with certain terms of the extension. In accordance with one part of the plan submitted to the Staff, we have successfully modified our outstanding warrants and are able to now classify the warrants within equity. At December 31, 2020, our stockholders&#8217; equity was $4,255,000. On January 20, 2021, we received a letter from the Staff notifying us that, on a conditional basis, Nasdaq has determined that we have regained compliance with the Minimum Stockholders&#8217; Equity Rule. At March&#160;31, 2021, our stockholders&#8217; equity was $3,278,000.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringAndRelatedActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringAndRelatedActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for restructuring and related activities. Description of restructuring activities such as exit and disposal activities, include facts and circumstances leading to the plan, the expected plan completion date, the major types of costs associated with the plan activities, total expected costs, the accrual balance at the end of the period, and the periods over which the remaining accrual will be settled.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -URI http://asc.fasb.org/topic&amp;trid=2175745<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674427582776">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventories</a></td>
<td class="text">INVENTORIES<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories are stated at the lower of standard cost (which approximates actual cost determined using the first-in, first-out cost method) or net realizable value, and consist of the following (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.815%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.569%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Raw materials</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,373&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,695&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,125&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,840&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reserves for excess, obsolete, and slow-moving inventories </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,983)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,894)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Inventories, net</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,515&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,641&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a roll-forward of the reserves for excess, obsolete, and slow-moving inventories (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.815%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.569%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31, 2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Twelve months ended December 31, 2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beginning balance</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,894)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,518)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrual</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(101)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">281&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reduction due to sold inventory</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">343&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Reserves for excess, obsolete, and slow-moving inventories</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,983)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,894)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI http://asc.fasb.org/topic&amp;trid=2126998<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674428979448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">Property and Equipment</a></td>
<td class="text">PROPERTY AND EQUIPMENT<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment are stated at cost and depreciated using the straight-line method over the estimated useful lives of the related assets and consist of the following (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.815%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.569%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Equipment (useful life 3 to 15 years)</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,281&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,281&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tooling (useful life 2 to 5 years)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">240&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">240&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vehicles (useful life 5 years)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Furniture and fixtures (useful life 5 years)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">137&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">137&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer software (useful life 3 years)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,057&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements (the shorter of useful life or lease life)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">169&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">169&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease right-of-use asset</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Projects in progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">152&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">140&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Property and equipment at cost</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,193&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,084&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,711)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,664)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Property and equipment, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">482&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">420&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Depreciation expense was $47&#160;thousand and $46&#160;thousand for the three months ended March 31, 2021 and 2020, respectively.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99893-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -URI http://asc.fasb.org/topic&amp;trid=2155823<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=SL120174063-112916<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99779-112916<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674432425928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeFinanceLeasesTextBlock', window );">Leases</a></td>
<td class="text">LEASESThe Company leases certain equipment, manufacturing, warehouse and office space under non-cancellable operating leases with expirations through 2026 under which it is responsible for related maintenance, taxes and insurance. The Company has one finance lease containing a bargain purchase option upon expiration of the lease in 2022. The lease term consists of the non-cancellable period of the lease, periods covered by options to extend the lease if the Company is reasonably certain to exercise the option, and periods covered by an option to terminate the lease if the Company is reasonably certain not to exercise the option. As of January 21, 2021, the terms of one of these equipment operating leases has been extended through <div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2026. In accordance with Accounting Standard Codification 842, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Leases</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#8220;Topic 842&#8221;), the related right-of-use asset and lease liability was updated at the time of modification in January 2021. The present value of the lease obligation for this lease was calculated using an incremental borrowing rate of 15.93%, which was the Company&#8217;s blended borrowing rate on its revolving lines of credit with Crossroads Financial Group, LLC (as described below in Note 7, &#8220;Debt&#8221;) and Factors Southwest L.L.C. (as described below in Note 7, &#8220;Debt&#8221;). The present value of the remaining lease obligation was calculated using an incremental borrowing rate of 7.25%, which was the Company&#8217;s borrowing rate on its former revolving line of credit with Austin Financial Services, Inc. (the &#8220;Austin Credit Facility&#8221;). The weighted average remaining lease term for operating, restructuring and finance leases is 1.6 years, 0.3 years, and 1.1 years, respectively.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company had one restructured lease with a sub-lease component for the New York, New York office that was closed in 2017. The lease expires in 2021. As part of the lease agreement, there was $0.3 million in restricted cash in other current assets on the accompanying Condensed Consolidated Balance Sheets as of both March&#160;31, 2021 and December&#160;31, 2020, which represents collateral against the related letter of credit issued as part of this agreement.</span></div><div><span><br/></span></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The restructured lease and sub-lease were deemed to be in-scope and thus subject to the requirements of Topic 842 and were evaluated for impairment in accordance with the asset impairment provisions of Accounting Standard Codification 360, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Property, Plant and Equipment</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#8220;Topic 360&#8221;). The Company concluded its net right-of-use assets were not impaired and the carrying amount approximates expected sub-lease income in future years as of March&#160;31, 2021. The Company continues to carry certain immaterial operating expenses associated with this lease as restructuring liabilities and will continue to accrete those liabilities in accordance with Accounting Standard Codification 420, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Exit or Disposal Cost Obligations</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#8220;Topic 420&#8221;), as has been done since the cease use date in 2017. For additional information regarding treatment of leases please refer to Note 4, &#8220;Leases,&#8221; included under Item 8, &#8220;Financial Statements and Supplementary Data,&#8221; of our 2020 Annual Report.</span></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of the operating, restructured and finance lease costs recognized in net loss for the three months ended March&#160;31, 2021 and 2020, were as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.515%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.851%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.568%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating lease cost (income)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sub-lease income</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">152&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost, net</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">127&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:8pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Restructured lease cost (income)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sub-lease income</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructured lease income, net</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(12)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:11pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total lease cost, net</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">120&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to the Company&#8217;s operating and finance leases as of March&#160;31, 2021 and December&#160;31, 2020 are as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.851%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.568%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">676&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">794&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructured lease right-of-use assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">107&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use assets, total</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">730&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">901&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">781&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">916&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructured lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities, total</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">866&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,084&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Finance Leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Allowances for depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease assets, net</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:9pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total finance lease liabilities</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future minimum lease payments required under operating, restructured and finance leases for each of the 12-month rolling periods below in effect at March&#160;31, 2021 are as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:34.635%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:14.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.967%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restructured Leases</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restructured Leases Sub-lease Payments</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Finance Lease</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2021 to March 2022</span></td><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">621&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2022 to March 2023</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">175&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2023 to March 2024</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2024 to March 2025</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2025 to March 2026</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total future undiscounted lease payments</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">818&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less imputed interest</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(37)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease obligations</span></td><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">781&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental cash flow information related to leases for the three months ended March&#160;31, 2021 and 2020, was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.400%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.568%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Supplemental cash flow information</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid, net, for amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from operating leases</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">135&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from restructured leases</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing cash flows from finance leases</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">Leases</a></td>
<td class="text">LEASESThe Company leases certain equipment, manufacturing, warehouse and office space under non-cancellable operating leases with expirations through 2026 under which it is responsible for related maintenance, taxes and insurance. The Company has one finance lease containing a bargain purchase option upon expiration of the lease in 2022. The lease term consists of the non-cancellable period of the lease, periods covered by options to extend the lease if the Company is reasonably certain to exercise the option, and periods covered by an option to terminate the lease if the Company is reasonably certain not to exercise the option. As of January 21, 2021, the terms of one of these equipment operating leases has been extended through <div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2026. In accordance with Accounting Standard Codification 842, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Leases</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#8220;Topic 842&#8221;), the related right-of-use asset and lease liability was updated at the time of modification in January 2021. The present value of the lease obligation for this lease was calculated using an incremental borrowing rate of 15.93%, which was the Company&#8217;s blended borrowing rate on its revolving lines of credit with Crossroads Financial Group, LLC (as described below in Note 7, &#8220;Debt&#8221;) and Factors Southwest L.L.C. (as described below in Note 7, &#8220;Debt&#8221;). The present value of the remaining lease obligation was calculated using an incremental borrowing rate of 7.25%, which was the Company&#8217;s borrowing rate on its former revolving line of credit with Austin Financial Services, Inc. (the &#8220;Austin Credit Facility&#8221;). The weighted average remaining lease term for operating, restructuring and finance leases is 1.6 years, 0.3 years, and 1.1 years, respectively.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company had one restructured lease with a sub-lease component for the New York, New York office that was closed in 2017. The lease expires in 2021. As part of the lease agreement, there was $0.3 million in restricted cash in other current assets on the accompanying Condensed Consolidated Balance Sheets as of both March&#160;31, 2021 and December&#160;31, 2020, which represents collateral against the related letter of credit issued as part of this agreement.</span></div><div><span><br/></span></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The restructured lease and sub-lease were deemed to be in-scope and thus subject to the requirements of Topic 842 and were evaluated for impairment in accordance with the asset impairment provisions of Accounting Standard Codification 360, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Property, Plant and Equipment</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#8220;Topic 360&#8221;). The Company concluded its net right-of-use assets were not impaired and the carrying amount approximates expected sub-lease income in future years as of March&#160;31, 2021. The Company continues to carry certain immaterial operating expenses associated with this lease as restructuring liabilities and will continue to accrete those liabilities in accordance with Accounting Standard Codification 420, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Exit or Disposal Cost Obligations</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (&#8220;Topic 420&#8221;), as has been done since the cease use date in 2017. For additional information regarding treatment of leases please refer to Note 4, &#8220;Leases,&#8221; included under Item 8, &#8220;Financial Statements and Supplementary Data,&#8221; of our 2020 Annual Report.</span></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of the operating, restructured and finance lease costs recognized in net loss for the three months ended March&#160;31, 2021 and 2020, were as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.515%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.851%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.568%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating lease cost (income)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sub-lease income</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">152&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost, net</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">127&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:8pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Restructured lease cost (income)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sub-lease income</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructured lease income, net</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(12)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:11pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total lease cost, net</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">120&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to the Company&#8217;s operating and finance leases as of March&#160;31, 2021 and December&#160;31, 2020 are as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.851%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.568%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">676&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">794&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructured lease right-of-use assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">107&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use assets, total</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">730&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">901&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">781&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">916&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructured lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities, total</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">866&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,084&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Finance Leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Allowances for depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease assets, net</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:9pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total finance lease liabilities</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future minimum lease payments required under operating, restructured and finance leases for each of the 12-month rolling periods below in effect at March&#160;31, 2021 are as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:34.635%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:14.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.967%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restructured Leases</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restructured Leases Sub-lease Payments</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Finance Lease</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2021 to March 2022</span></td><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">621&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2022 to March 2023</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">175&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2023 to March 2024</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2024 to March 2025</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2025 to March 2026</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total future undiscounted lease payments</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">818&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less imputed interest</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(37)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease obligations</span></td><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">781&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-bottom:8pt"><span><br/></span></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental cash flow information related to leases for the three months ended March&#160;31, 2021 and 2020, was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.400%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.568%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Supplemental cash flow information</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid, net, for amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from operating leases</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">135&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from restructured leases</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing cash flows from finance leases</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeFinanceLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for finance leases of lessee. Includes, but is not limited to, description of lessee's finance lease and maturity analysis of finance lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -URI http://asc.fasb.org/subtopic&amp;trid=77888251<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeFinanceLeasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -URI http://asc.fasb.org/subtopic&amp;trid=77888251<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674593424072">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Debt Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">Debt</a></td>
<td class="text">DEBT<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Credit facilities</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On August 11, 2020, we entered into two debt financing arrangements (together, the &#8220;Credit Facilities&#8221;). The first arrangement is an inventory financing facility (the &#8220;Inventory Facility&#8221;) pursuant to the Loan and Security Agreement (the &#8220;Inventory Loan Agreement&#8221;), between the Company and Crossroads Financial Group, LLC, a North Carolina limited liability company (the &#8220;IF Lender&#8221;). Borrowings under the original Inventory Facility were permitted up to the lower of (i) $3.0 million, which amount was subsequently increased to $3.5&#160;million as described below, and (ii) a borrowing base determined from time to time based on the value of the Company&#8217;s eligible inventory, valued at 75% of inventory costs or 85% of the inventory net orderly liquidation value, less the availability reserves. The outstanding indebtedness under the Inventory Facility accrues at an annual rate equal to the greater of (i) 5.75% and (ii) 4.00% plus the three (3) month LIBOR rate and is also subject to a service fee of 1% per month. The annualized interest rate at March&#160;31, 2021 and December&#160;31, 2020 was 22.4% and 23.6%, respectively. The Inventory Facility&#8217;s interest and service fees combined amount is subject to a minimum monthly fee of $18 thousand. There would be no breakage fee for the Company for the Inventory Facility if the Company were to refinance it with an American Bankers Association (&#8220;ABA&#8221;) equivalent institution after August 11, 2021. The Inventory Facility is secured by substantially all of the present and future assets of the Company and is also governed by an intercreditor agreement among the Company, the IF Lender and the RF Lender (defined below). The Inventory Facility matures on August 11, 2022, subject to early termination upon 90 days&#8217; notice and otherwise in accordance with the terms of the Inventory Loan Agreement. The term is automatically extended in successive one (1) year increments unless terminated by either party in accordance with the Inventory Loan Agreement. On April 20, 2021, the Company and the IF lender entered into an amendment to the Inventory Loan Agreement to increase the maximum amount that may be available to the Company from $3.0 million previously to $3.5 million, subject to the borrowing base as set forth in the Inventory Loan Agreement. Please also refer to Note 11, &#8220;Subsequent Events&#8221;.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The second arrangement is a receivables financing facility (the &#8220;Receivables Facility&#8221;) pursuant to the Loan and Security Agreement (the &#8220;Receivables Loan Agreement&#8221;) between the Company and Factors Southwest L.L.C. (d/b/a FSW Funding), an Arizona limited liability company (the &#8220;RF Lender&#8221;). Borrowings under the Receivables Facility are permitted up to the lower of (i) $2.5 million or (ii) a borrowing base determined from time to time based on the value of the Company&#8217;s eligible accounts receivable, valued at 90% of the face value of such accounts receivable, less availability reserves, if any. Interest on outstanding indebtedness under the Receivables Facility accrues at an annual rate equal to (i) the highest prime rate announced from time to time by the Wall Street Journal plus (ii) 2%. At March&#160;31, 2021 and December&#160;31, 2020, the annualized interest rate was 7.6% and 7.9%, respectively. The annualized interest rate on the collateral management fee was 6% at both March&#160;31, 2021 and December&#160;31, 2020. The Receivables Facility is also secured by substantially all of the present and future assets of the Borrower and is also governed by an intercreditor agreement among the Company, the IF Lender and the RF Lender. A $25 thousand, or 1%, facility fee was charged at closing. There would be no breakage fee for the Company for the Receivables Facility if the Company were to refinance it with an ABA equivalent institution. The Receivables Facility matures on August 11, 2022, subject to early termination in accordance with the terms of the Receivables Loan Agreement; provided that the term is automatically extended in successive one (1) year increments unless terminated by either party in accordance with the Receivables Loan Agreement.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Borrowings under the Inventory Facility were $2.7 million and $1.3 million at March&#160;31, 2021 and December&#160;31, 2020, respectively. Borrowings under the Receivables Facility were $0.7 million and $1.0 million at March&#160;31, 2021 and December&#160;31, 2020, respectively. These facilities are recorded in the Condensed Consolidated Balance Sheet as of March&#160;31, 2021 as a current liability under the caption &#8220;Credit line borrowings.&#8221; Outstanding balances include unamortized net issuance costs totaling $0.1 million for the Inventory Facility and $30 thousand for the Receivables Facility as of March&#160;31, 2021, and $0.1 million for the Inventory Facility and $40 thousand for the Receivables Facility as of December&#160;31, 2020.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Credit Facilities replaced the Austin Credit Facility that was entered into on December 11, 2018 and was secured by a lien on our assets. The Austin Credit Facility was a three year, $5.0 million revolving line of credit. Interest on advances under the line was due monthly at the &#8220;Prime Rate,&#8221; as published by the Wall Street Journal from time to time, plus a margin of 2%. The borrowing rate as of March 31, 2020 was 5.25%. Additionally, an annual facility fee of 1% on the entire $5.0 million amount of the Austin Credit Facility was due at the beginning of each of the three years that the Austin Credit Facility was outstanding and a 0.5% collateral management fee on the average outstanding loan balance was payable monthly. Borrowings under the Austin Credit Facility were $0.8 million at March&#160;31, 2020. On August 11, 2020, we paid </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$1.4 million to close the Austin Credit Facility which included a $100 thousand termination fee. Additionally, we wrote off $59 thousand of the remaining related debt acquisition costs. For additional information regarding the Austin Credit Facility, please refer to Note 9, &#8220;Debt,&#8221; included under Item 8, &#8220;Financial Statements and Supplementary Data,&#8221; of our 2020 Annual Report.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For additional information regarding the Credit Facilities, please refer to Part II, Item 5, &#8220;Other Information,&#8221; included in our Quarterly Report on Form 10-Q for the quarterly period ended June 30, 2020, filed on August 13, 2020.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Convertible Notes</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On March&#160;29, 2019, we issued $1.7 million aggregate principal amount of subordinated convertible promissory notes (the &#8220;Convertible Notes&#8221;) to certain investors in a private placement exempt from the registration requirements of the Securities Act of 1933, as amended. The Convertible Notes bore interest at a rate of 5% per annum until June 30, 2019 and at a rate of 10% thereafter. Pursuant to their terms, on January&#160;16, 2020, following approval by our stockholders of certain amendments to the Certificate of Incorporation, the principal amount of all of the Convertible Notes and</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">the accumulated interest thereon ($0.1&#160;million), which totaled $1.8 million, were converted at a conversion price of $0.67 per share into an aggregate of 2,709,018 shares of the Company&#8217;s Series A Convertible Preferred Stock, par value 0.0001 per share (&#8220;Series A Preferred Stock&#8221;), which is convertible on a one-for-five basis into shares of our common stock. During the year ended December&#160;31, 2020, 111,548 shares of the Series A Preferred Stock were converted into 22,310 shares of common stock. No conversions occurred during the three months ended March&#160;31, 2021. On April 1, 2021, 1,721,023 shares of Series A Preferred Stock were converted into 344,205 shares of common stock. Please also refer to Note 11, &#8220;Subsequent Events&#8221;. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The purchase agreement related to the Convertible Notes contains customary representations and warranties and provides for resale registration rights with respect to the shares of our common stock issuable upon conversion of the Series A Preferred Stock. Please also refer to Note 9, &#8220;Stockholders&#8217; Equity&#8221;.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Iliad Note </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On November&#160;25, 2019, we entered into a note purchase agreement (the &#8220;Iliad Note Purchase Agreement&#8221;) with Iliad Research and Trading, L.P. (&#8220;Iliad&#8221;) pursuant to which the Company sold and issued to Iliad a promissory note in the principal amount of $1.3 million (the &#8220;Iliad Note&#8221;). The Iliad Note was issued with an original issue discount of $142 thousand and Iliad paid a purchase price of $1.1 million for the issuance of the Iliad Note, after deduction of $15 thousand of Iliad transaction expenses. </span></div><div><span><br/></span></div><div style="margin-bottom:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2020, we repaid the outstanding balance on the Iliad Note in full prior to its maturity date of November&#160;24, 2021. Remaining debt and original issue discount costs of $117 thousand were written off at that time. The Iliad Note accrued interest at 8% per annum, compounded daily, on the outstanding balance.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the Iliad Note Purchase Agreement and the Iliad Note, we had, among other things, agreed that, until the Iliad Note was repaid 10% of gross proceeds the Company received from the sale of our common stock or other equity must be paid to Iliad and applied to reduce the outstanding balance of the Iliad Note. In accordance with the terms of the Iliad Note, 10% of the gross proceeds from the January 2020 Equity Offering ($275 thousand) were used to make payments on the Iliad Note, of which $226 thousand went towards the outstanding principal amount. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The total liability for the Iliad Note, excluding financing fees, was $0.9&#160;million at March 31, 2020. Unamortized loan discount and debt issuance costs were $0.2&#160;million at March 31, 2020.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Streeterville Note</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April 27, 2021, we entered into a note purchase agreement (the &#8220;Streeterville Note Purchase Agreement&#8221;) with Streeterville Capital, LLC (&#8220;Streeterville&#8221;) pursuant to which we sold and issued to Streeterville a promissory note in the principal amount of approximately $1.7&#160;million (the &#8220;Streeterville Note&#8221;). The Streeterville Note was issued with an original issue discount of $194&#160;thousand and Streeterville paid a purchase price of $1.5&#160;million for the Streeterville Note, after deduction of $15&#160;thousand of Streeterville transaction expenses. See also Note 11, &#8220;Subsequent Events&#8221;.</span></div>PPP LoanOn April&#160;17, 2020, the Company was granted a loan from KeyBank National Association (&#8220;KeyBank&#8221;) in the amount of approximately $795&#160;thousand, pursuant to the Paycheck Protection Program (&#8220;PPP&#8221;) under Division A of the Coronavirus Aid, Relief and Economic Security Act (the &#8220;CARES Act&#8221;), which was enacted on March 27, 2020. The funds were received on April 20, 2020 and accrued interest at a rate of 1.0% per annum. At December 31, 2020, $529&#160;thousand was classified as short-term debt and $266&#160;thousand was classified as long-term debt on the Company&#8217;s Consolidated Balance Sheet. Under the terms of the PPP, certain amounts of the loan may be forgiven if they are used for qualifying expenses as described in the CARES Act. The entire principal balance and interest were forgiven by the Small Business Administration on February 11, 2021. The $801&#160;thousand forgiveness income was recorded as other income in the Consolidated Statements of Operations during the three months ended March&#160;31, 2021.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -URI http://asc.fasb.org/topic&amp;trid=2208564<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674427541288">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text">INCOME TAXES<div style="padding-right:4.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a result of the operating loss incurred during each of the three months ended March&#160;31, 2021 and 2020, and after the application of the annual limitation set forth under Section 382 of the Internal Revenue Code of 1986, as amended (the &#8220;IRC&#8221;), it was not necessary to record a provision for U.S. federal income tax. </span></div><div style="padding-right:4.5pt"><span><br/></span></div><div style="padding-right:4.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At March&#160;31, 2021 and December&#160;31, 2020, we had a full valuation allowance recorded against our deferred tax assets. </span></div><div style="padding-right:4.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The valuation allowance was recorded due to uncertainties related to our ability to realize the deferred tax assets, primarily consisting of certain net operating loss carry-forwards. The valuation allowance is based on management&#8217;s estimates of taxable income by jurisdiction and the periods over which the deferred tax assets will be recoverable.</span></div><div style="padding-right:4.5pt"><span><br/></span></div><div style="padding-right:4.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At December&#160;31, 2020, we had a net operating loss carry-forward of approximately $115.9 million for federal income tax purposes ($72.3 million for state and local income tax purposes). However, due to changes in our capital structure, approximately $61.5 million of the $115.9 million is available after the application of IRC Section 382 limitations. As a result of the Tax Cuts and Jobs Act of 2017 (the &#8220;Tax Act&#8221;), net operating loss carry-forwards generated in tax years beginning after December 31, 2017 can only offset 80% of taxable income and can be carried forward indefinitely. The $7.1 million and $8.3 million in net operating losses generated in 2020 and 2019, respectively, will be subject to the new limitations under the Tax Act. If not utilized, the carry-forwards generated prior to December 31, 2017 of $37.3 million will begin to expire in 2021 for federal purposes and have begun to expire for state and local purposes. For a full discussion of the estimated restrictions on our utilization of net operating loss carry-forwards, please refer to Note 12, &#8220;Income Taxes,&#8221; included under Item 8, &#8220;Financial Statements and Supplementary Data,&#8221; of our 2020 Annual Report.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32857-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330215-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32809-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32705-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 270<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6424409&amp;loc=d3e44925-109338<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI http://asc.fasb.org/topic&amp;trid=2144680<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6424122&amp;loc=d3e41874-109331<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674514845448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteAbstract', window );"><strong>Stockholders' Equity Note [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock', window );">Shareholders' Equity</a></td>
<td class="text">STOCKHOLDERS&#8217; EQUITY<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">1-for-5 Reverse Stock Split</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On June 11, 2020, in accordance with previous stockholder approval, our Board of Directors effected a 1-for-5 reverse stock split of the Company&#8217;s common stock, par value $0.0001 per share. The reverse stock split became effective at the Effective Time upon the filing of the Certificate of Amendment to the Certificate of Incorporation with the Delaware Secretary of State. At the Effective Time, every five shares of common stock issued and outstanding automatically combined into one validly issued, fully paid and non-assessable share of common stock. No fractional shares were issued as a result of the reverse stock split. The fractional shares were settled in cash in an amount not material to the Company. The $0.0001 par value per share of common stock and other terms of the common stock were not affected by the reverse stock split. The number of authorized shares of common stock under the Certificate of Incorporation remained unchanged at 50,000,000 shares. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The current financial statements, as well as prior period financial statements, have been retroactively adjusted to reflect the reverse stock split. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Proportional adjustments were made to the conversion and exercise prices of our outstanding warrants and stock options, and to the number of shares issued and issuable under our stock incentive plans in connection with the reverse stock split. The current financial statements as well as prior period financial statements have been retroactively adjusted to reflect the reverse stock split. Preferred shares outstanding were not affected by the reverse stock split and, as such, those shares have not been adjusted.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The reverse stock split was effected solely to increase the per share trading price of the common stock to satisfy the $1.00</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">minimum bid price requirement pursuant to Nasdaq Listing Rule 5550(a)(2) for continued listing on Nasdaq.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The common stock began trading on Nasdaq on a split-adjusted basis at the opening of trading on June 12, 2020.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Preferred Stock</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the terms of the Convertible Notes, on January 16, 2020, following approval by our stockholders of certain amendments to the Certificate of Incorporation, the principal amount of all of the Convertible Notes and the accumulated interest thereon at the date of conversion (totaling $1.8 million) were converted at a conversion price of $0.67 per share into an aggregate of 2,709,018 shares of the Company&#8217;s Series A Preferred Stock, which is convertible on a one-for-five basis into shares of our common stock. During the year ended December&#160;31, 2020, 111,548 shares of the Series A Preferred Stock were converted into 22,310 shares of common stock. No conversions occurred during the three months ended March&#160;31, 2021. On April 1, 2021, 1,721,023 shares of Series A Preferred Stock were converted into 344,205 shares of common stock. Please also refer to Note 11, &#8220;Subsequent Events&#8221;.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Series A Preferred Stock was created by the filing of a Certificate of Designation with the Secretary of State of the State of Delaware on March 29, 2019, which designated 2,000,000 shares of the Company&#8217;s preferred stock, par value $0.0001 per share, as Series A Preferred Stock (the &#8220;Original Series A Certificate of Designation&#8221;). On January 15, 2020 with prior stockholder approval, the Company amended the Certificate of Incorporation to increase the number of authorized shares of preferred stock to 5,000,000. The Original Series A Certificate of Designation was also amended on January 15, 2020, to increase the number of shares of preferred stock designated as Series A Preferred Stock to 3,300,000 (the Original Series A Certificate of Designation, as so amended, the &#8220;Series A Certificate of Designation&#8221;). </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the Series A Certificate of Designation, each holder of outstanding shares of Series A Preferred Stock is entitled to vote with holders of outstanding shares of common stock, voting together as a single class, with respect to any and all matters presented to the stockholders of the Company for their action or consideration, except as provided by law. In any such vote, each share of Series A Preferred Stock shall entitle its holder to a number of votes equal to 11.07% of the number of shares of common stock into which such share of Series A Preferred Stock is convertible.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Series A Preferred Stock (a) has a preference upon liquidation equal to $0.67 per share and then participates on an as-converted basis with the common stock with respect to any additional distributions, (b) shall receive any dividends declared and payable on our common stock on an as-converted basis, and (c) is convertible at the option of the holder into shares of our common stock on a one-for-five basis. On March 29, 2019, the Company also filed a Certificate of Elimination with respect to its authorized, but unissued, Series A Participating Preferred Stock, to return such shares to the status of undesignated preferred stock available for designation as Series A Preferred Stock.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The purchase agreement related to the Convertible Notes contains customary representations and warranties and provides for resale registration rights with respect to the shares of our common stock issuable upon conversion of the Series A Preferred Stock.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">January 2020 Equity Offering</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;text-decoration:underline">Issuance of Common Stock and Warrants</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In January 2020, we completed a registered direct offering for the sale of 688,360 shares of our common stock to certain institutional investors, at a purchase price of $3.37 per share. We also sold, to the same institutional investors, warrants to purchase up to 688,360 shares of common stock at an exercise price of $3.37 per share in a concurrent private placement for a purchase price of $0.625 per warrant. We paid the placement agent commissions of $193&#160;thousand plus $50&#160;thousand in expenses in connection with the registered direct offering and the concurrent private placement and we also paid legal, accounting and other fees of $231&#160;thousand related to the offering. Total offering costs of $510&#160;thousand have been presented as a reduction of additional paid-in capital and have been netted within equity in the Condensed Consolidated Balance Sheet as of December&#160;31, 2020. In addition, we issued warrants to the placement agent to purchase up to 48,185 shares of common stock at an exercise price of $4.99 per share. Net proceeds to us from the sale of common stock and warrants were approximately $2.3 million. In accordance with the terms of the Iliad Note (as defined above in Note 7, &#8220;Debt&#8221;), 10% of the gross proceeds from the January 2020 Equity Offering ($275&#160;thousand) were used to make payments on the Iliad Note, of which $226&#160;thousand went towards the outstanding principal amount and the balance to interest.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Warrants to purchase an aggregate of 310,860 shares remain outstanding at March&#160;31, 2021 with a weighted average exercise price of $3.59 per share. The exercise of warrants could provide us with cash proceeds of up to $1.1 million in the aggregate if all warrants are exercised. During the three months ended March 31, 2021, 156,446 warrants were exercised resulting in total proceeds of $527 thousand. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As of March&#160;31, 2021, we had the following outstanding warrants to purchase shares of common stock:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:47.398%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.570%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Number of Underlying Shares</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Exercise Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expiration</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Investor Warrants</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">269,180</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$3.3700</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 13, 2025</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Placement Agent Warrants</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,680</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$4.9940</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 13, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">310,860</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As of March 31, 2020, we had the following outstanding warrants to purchase shares of common stock:</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:47.398%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.570%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Number of Underlying Shares*</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Exercise Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expiration</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Investor Warrants</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">688,360</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$3.3700</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 13, 2025</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Placement Agent Warrants</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48,185</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$4.9940</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 13, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">736,545</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Warrant Classification</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We account for common stock warrants as either liabilities or equity instruments depending on the specific terms of the warrant agreement. Common stock warrants that could require cash settlement are accounted for as liabilities and are revalued at fair value at each balance sheet date subsequent to the initial issuance. Changes in the fair market value of the warrant are reflected in the consolidated statement of operations as income (expense) based upon the change in fair value of warrants. Common stock warrants without cash settlement provisions are accounted for as equity and re-measurement at each balance sheet date is not required.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The warrants we issued in the January 2020 Equity Offering contained a provision for net cash settlement in the event that there is a fundamental transaction involving the Company (e.g., merger, sale of substantially all assets, tender offer, or share exchange). Due to this provision, the warrants were initially classified as liabilities, as opposed to equity, and were recorded at their fair values at each balance sheet date with fair value adjustments recognized as a component of earnings. During December 2020, the warrant holders agreed to a modification of the terms of their warrants which removed the potential cash settlement option upon the occurrence of a fundamental transaction. As such, during the fourth quarter of 2020, the warrant liability was reclassified into equity and the warrants are no longer subject to re-measurement at each balance sheet date. </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Stock-based compensation</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation expense is attributable to stock options and restricted stock unit awards. For all stock-based awards, we recognize expense using a straight-line amortization method.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes stock-based compensation expense and the impact it had on operations for the periods presented (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.815%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.569%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Product development</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general, and administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">132&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total stock-based compensation</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">140&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total unearned stock-based compensation was $0.6 million at March&#160;31, 2021, compared to $0.2 million at March&#160;31, 2020. These costs will be charged to expense and amortized on a straight-line basis in future periods. The weighted average period over which the unearned compensation at March&#160;31, 2021 is expected to be recognized is approximately 2.5 years.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Stock options</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of each stock option is estimated on the date of grant using the Black-Scholes option pricing model. Estimates utilized in the calculation include the expected life of the option, risk-free interest rate, and expected volatility, and are further detailed below. </span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.400%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.568%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of options issued*</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.26&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.12&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exercise price*</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.51&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.48&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected life of options (in years)</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.2</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.1</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Risk-free interest rate</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected volatility</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">92.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dividend yield</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="12" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*Prior year options have been restated for the 1-for-5 reverse stock split effective June 11, 2020.</span></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of option activity under all outstanding stock incentive plans for the three months ended March 31, 2021 is presented as follows:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:47.398%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.570%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Number of<br/>Options</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted<br/>Average<br/>Exercise<br/>Price Per<br/>Share</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted<br/>Average<br/>Remaining<br/>Contractual<br/>Life (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">221,450&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.45&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">72,120&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.51&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canceled/forfeited</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,459)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.77&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expired</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,500)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53.50&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at March 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">287,611&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.71&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.9</span></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Vested and expected to vest at March 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">228,312&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.68&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.8</span></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Exercisable at March 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,154&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.25&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.1</span></td></tr><tr><td colspan="3" style="display:none"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Restricted stock units</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of restricted stock unit activity under all outstanding stock incentive plans for the three months ended March 31, 2021 is presented as follows:</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:47.398%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.570%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restricted<br/>Stock Units</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted<br/>Average<br/>Grant<br/>Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted<br/>Average<br/>Remaining<br/>Contractual<br/>Life (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,480&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.64&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.26&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,280)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12.40&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at March 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53,200&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.37&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.4</span></td></tr><tr><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for shareholders' equity and share-based payment arrangement. Includes, but is not limited to, disclosure of policy and terms of share-based payment arrangement, deferred compensation arrangement, and employee stock purchase plan (ESPP).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -URI http://asc.fasb.org/topic&amp;trid=2208762<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI http://asc.fasb.org/topic&amp;trid=2228938<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674427575176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text">COMMITMENTS AND CONTINGENCIES<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Purchase Commitments</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March&#160;31, 2021, we had approximately $4.2&#160;million in outstanding purchase commitments for inventory. Of this amount, approximately $1.4&#160;million is expected to ship in the second quarter of 2021, with the balance expected to ship in the third quarter of 2021 and thereafter.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI http://asc.fasb.org/topic&amp;trid=2127136<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -URI http://asc.fasb.org/topic&amp;trid=2144648<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559207&amp;loc=d3e25336-109308<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121559207&amp;loc=d3e25336-109308<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674427521368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent Events<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventsAbstract', window );"><strong>Subsequent Events [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">Subsequent Events</a></td>
<td class="text">SUBSEQUENT EVENTS<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Streeterville Note</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As disclosed in Note 7, &#8220;Debt&#8221;, on April 27, 2021, we entered into the Streeterville Note Purchase Agreement with Streeterville pursuant to which the Company sold and issued to Streeterville Note in the principal amount of approximately $1.7&#160;million. The Streeterville Note was issued with an original issue discount of $194&#160;thousand and Streeterville paid a purchase price of $1.5&#160;million for the Streeterville Note, after deduction of $15&#160;thousand of Streeterville transaction expenses.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Streeterville Note has a maturity date of April 27, 2023, and accrues interest at 8% per annum, compounded daily, on the outstanding balance. The Company may prepay the amounts outstanding under the Note at a premium, which is 5% during the first three months and 10% percent thereafter. Prepayments at the reduced rate in the first three months are limited to 50% of the outstanding balance. Beginning on the first day of the calendar month following the date that is six </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">months after the date of purchase, Streeterville may require the Company to redeem up to $205&#160;thousand of the Streeterville Note in any calendar month. The Company has the right on three occasions to defer all redemptions that Streeterville could otherwise require the Company to make during any calendar month. Each exercise of this deferral right by the Company will increase the amount outstanding under the Streeterville Note by 1.5%.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Inventory Facility Increase</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As disclosed in Note 7, &#8220;Debt&#8221;, the Company entered into the Inventory Facility with the IF lender on August 11, 2020. Borrowings under the original Inventory Facility were permitted up to the lower of (i) $3.0 million and (ii) a borrowing base determined from time to time based on the value of the Company&#8217;s eligible inventory, valued at 75% of inventory costs or 85% of the inventory net orderly liquidation value, less the availability reserves. On April 20, 2021, the Company and the IF lender entered into an amendment to the Inventory Loan Agreement to increase the maximum amount that may be available to the Company from $3.0 million previously to $3.5 million, subject to the borrowing base as set forth in the Inventory Loan Agreement.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Preferred Stock Conversion</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April 1, 2021, 1,721,023 shares of Series A Preferred Stock were converted into 344,205 common shares. The Series A Preferred Stock was held by a Schedule 13D ownership group (under Section 13(d)(3) of the Exchange Act and Rule 13d-5 promulgated thereunder) that includes Fusion Park LLC and 5 Elements Global Fund L.P. (controlled affiliates of James Tu, the Company&#8217;s Executive Chairman and Chief Executive Officer), as well as Brilliant Start Enterprise Inc. and Jag International Ltd. (controlled affiliates of Gina Huang, a member of the Company&#8217;s Board of Directors). Upon the conversion of their respective shares of Series A Preferred Stock, Fusion Park and Brilliant Start received 184,851 and 159,354 shares, respectively, of the Company&#8217;s common stock.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI http://asc.fasb.org/topic&amp;trid=2122774<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6842918&amp;loc=SL6314017-165662<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674432198680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of presentation</a></td>
<td class="text"><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis of presentation</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The significant accounting policies of our Company, which are summarized below, are consistent with accounting principles generally accepted in the United States (&#8220;U.S. GAAP&#8221;) and reflect practices appropriate to the business in which we operate. Unless indicated otherwise, the information in the Notes to the Consolidated Financial Statements relates to our operations.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have prepared the accompanying financial data for the three months ended March&#160;31, 2021 and 2020 pursuant to the rules and regulations of the United States Securities and Exchange Commission. Certain information and footnote disclosures normally included in financial statements prepared in accordance with U.S. GAAP have been condensed or omitted pursuant to such rules and regulations. The accompanying financial data and information should be read in conjunction with our Annual Report on Form 10-K for the year ended December&#160;31, 2020 (&#8220;2020 Annual Report&#8221;). The Condensed Consolidated Balance Sheet as of December&#160;31, 2020 has been derived from the audited consolidated financial statements at that date but does not include all of the information and footnotes required by U.S. GAAP for complete financial statements.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the opinion of management, the accompanying condensed consolidated financial statements contain all normal and recurring adjustments necessary to present fairly our Condensed Consolidated Balance Sheets as of March&#160;31, 2021 and December&#160;31, 2020, Condensed Consolidated Statements of Operations for the three months ended March&#160;31, 2021 and 2020, Condensed Consolidated Statements of Comprehensive Loss for the three months ended March&#160;31, 2021 and 2020, Condensed Consolidated Statements of Changes in Stockholders&#8217; Equity for the three months ended March&#160;31, 2021 and 2020, and Condensed Consolidated Statements of Cash Flows for the three months ended March&#160;31, 2021 and 2020.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of estimates</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Use of estimates</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of financial statements in accordance with U.S. GAAP requires management to make estimates and assumptions that affect the amounts reported in our financial statements and accompanying notes. Management bases its estimates on historical experience and various other assumptions believed to be reasonable. Although these estimates are based on management&#8217;s best knowledge of current events and actions that may impact us in the future, actual results may vary from the estimates. Estimates include, but are not limited to, the establishment of reserves for accounts receivable, sales returns, inventory obsolescence and warranty claims; the useful lives of property and equipment; valuation allowance for net deferred taxes; the cost and offsetting income related to sub-leased property; and stock-based compensation. In addition, estimates and assumptions associated with the determination of the fair value of financial instruments and evaluation of long-lived assets for impairment requires considerable judgment. Actual results could differ from those estimates and such differences could be material.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskCreditRisk', window );">Certain risks and concentrations</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Certain risks and concentrations</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have certain customers whose net sales individually represented 10% or more of our total net sales, or whose net trade accounts receivable balance individually represented 10% or more of our total net trade accounts receivable; we have certain suppliers, which individually represent 10% or more of our total purchases, or whose trade accounts payable balance individually represented 10% or more of our total trade accounts payable balance, as follows:</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March 31, 2021, sales to our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 50% and 11% of net sales, respectively. When sales to our primary distributor for the U.S. Navy are combined with sales to shipbuilders for the U.S. Navy, total net sales of products for the U.S. Navy comprised approximately 57% of net sales for the same period. For the three months ended March 31, 2020, sales to our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 38% and 15% of net sales, respectively. When sales to our primary distributor for the U.S. Navy are combined with sales to shipbuilders for the U.S. Navy, total net sales of products for the U.S. Navy comprised approximately 46% of net sales for the same period.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our primary distributor for the U.S. Navy and a regional commercial lighting retrofit company accounted for approximately 45% and 16% of net trade accounts receivable, respectively, at March&#160;31, 2021. At December 31, 2020, our primary distributor to the U.S. Navy accounted for 28% of our net trade accounts receivable and a shipbuilder for the U.S. Navy accounted for 21% of our net trade accounts receivable. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">One offshore supplier accounted for approximately 26% and 22%, respectively, of our total expenditures for the three months ended March 31, 2021 and March&#160;31, 2020. At March&#160;31, 2021, this same offshore supplier and one domestic supplier accounted for approximately 39% and 10% of our trade accounts payable balance, respectively. At December 31, 2020 this same offshore supplier accounted for approximately 44% of our trade accounts payable balance.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recent accounting pronouncements</a></td>
<td class="text">Recent accounting pronouncements<span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2016, the Financial Accounting Standards Board issued Accounting Standard Update No. 2016-13, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments</span>, which significantly changes the accounting for credit losses on instruments within its scope. The new guidance introduces an approach based on expected losses to estimate credit losses on certain financial instruments, including trade receivables, and requires an entity to recognize an allowance based on its estimate of expected credit losses rather than incurred losses. For smaller reporting companies, this standard will be effective for interim and annual periods starting after December 15, 2022 and will generally require adoption on a modified retrospective basis. We are in the process of evaluating the impact of the standard.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueRecognitionPolicyTextBlock', window );">Revenue</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Revenue</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales include revenues from sales of products and shipping and handling charges, net of estimates for product returns. Revenue is measured at the amount of consideration we expect to receive in exchange for the transferred products. We recognize revenue at the point in time when we transfer the promised products to the customer and the customer obtains control over the products. Distributors&#8217; obligations to us are not contingent upon the resale of our products. We recognize revenue for shipping and handling charges at the time the goods are shipped to the customer, and the costs of outbound </span></div>freight are included in cost of sales. We provide for product returns based on historical return rates. While we incur costs for sales commissions to our sales employees and outside agents, we recognize commission costs concurrent with the related revenue, as the amortization period is less than one year. We do not incur any other incremental costs to obtain contracts with our customers. Our product warranties are assurance-type warranties, which promise the customer that the products are as specified in the contract. Therefore, the product warranties are not a separate performance obligation and are accounted for as described below. Sales taxes assessed by governmental authorities are accounted for on a net basis and are excluded from net sales.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy', window );">Accounts Receivable</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Accounts Receivable</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our trade accounts receivable consist of amounts billed to and currently due from customers. Our customers are currently concentrated in the United States. In the normal course of business, we extend unsecured credit to our customers related to the sale of our products. Credit is extended to customers based on an evaluation of the customer&#8217;s financial condition and the amounts due are stated at their estimated net realizable value. We utilize an account receivable insurance program with a high credit worthy insurance company where we have the large majority of the accounts receivable insured with a portion of self-retention. This third party also provides creditworthiness ratings and metrics that significantly assist us in evaluating the creditworthiness of both existing and new customers. We maintain allowances for sales returns and doubtful accounts receivable to provide for the estimated number of accounts receivable that will not be collected. The allowance is based on an assessment of customer creditworthiness and historical payment experience, the age of outstanding receivables, and performance guarantees to the extent applicable. Past due amounts are written off when our internal collection efforts have been unsuccessful, and payments subsequently received on such receivables are credited to the allowance for doubtful accounts. We do not generally require collateral from our customers.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Our standard payment terms with customers are net 30 days from the date of shipment, and we do not generally offer extended payment terms to our customers, but exceptions are made in some cases to certain customers or with particular orders. Accordingly, we do not adjust trade accounts receivable for the effects of financing, as we expect the period between the transfer of product to the customer and the receipt of payment from the customer to be in line with our standard payment terms.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerSharePolicyTextBlock', window );">Net loss per share</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Net loss per share </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic loss per share is computed by dividing net loss available to common stockholders by the weighted average number of shares of common stock outstanding during the period, excluding the effects of any potentially dilutive securities. Diluted loss per share gives effect to all dilutive potential shares of common stock outstanding during the period. Dilutive potential shares of common stock consist of incremental shares upon the exercise of stock options, warrants and convertible securities, unless the effect would be anti-dilutive.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyPolicy', window );">Product warranties</a></td>
<td class="text">Product warranties<span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Through March&#160;31, 2016, we warranted finished goods against defects in material and workmanship under normal use and service for periods generally between <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOmExOTg3MTQ3ZWM4OTQ2ZTdhNzlkNDY4OTNlNGI5ODliL3NlYzphMTk4NzE0N2VjODk0NmU3YTc5ZDQ2ODkzZTRiOTg5Yl80Ni9mcmFnOjY3MDMwZTU3NTZlMzQ2Y2Q5ZmJiMjI3M2YwZDUzMTk1L3RleHRyZWdpb246NjcwMzBlNTc1NmUzNDZjZDlmYmIyMjczZjBkNTMxOTVfMTA5OTUxMTY1MDA0OQ_e66bff4c-194e-44bc-a3ef-eb779268857d">one</span> and five years. Beginning April&#160;1, 2016, we warrant our commercial TLEDs, the troffer luminaires, and certain Globe Lights for a period of ten years (excluding RedCap</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7.8pt;font-style:italic;font-weight:400;line-height:120%;position:relative;top:-4.2pt;vertical-align:baseline">&#174;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and our Battery Backup TLEDs), and all other LED products for five years per the Terms and Conditions outlined on our website. Beginning in October 2019, TLEDs (excluding RedCap</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">&#174;</span>) are primarily warranted for ten years, certain D-Series lamps are warranted for either ten years or five years based on the customer&#8217;s choice at time of purchase, and the warranty for all of our other products is five years. Warranty settlement costs consist of actual amounts expensed for warranty, which are largely a result of the cost of replacement products provided to our customers. A liability for the estimated future costs under product warranties is maintained for products under warranty based on the actual claims incurred to date and the estimated nature, frequency, and costs of future claims. These estimates are inherently uncertain and changes to our historical or projected experience may cause material changes to our warranty reserves in the future. We continuously review the assumptions related to the adequacy of our warranty reserve, including product failure rates, and make adjustments to the existing warranty liability when there are changes to these estimates or the underlying replacement product costs, or the warranty period expires.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueOfFinancialInstrumentsPolicy', window );">Financial Instruments</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Financial Instruments</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In January 2020, we completed a registered direct offering for the sale of 688,360 shares of our common stock to certain institutional investors, at a purchase price of $3.37 per share. We also sold, to the same institutional investors, warrants to purchase up to 688,360 shares of common stock at an exercise price of $3.37 per share in a concurrent private placement for a purchase price of $0.625 per warrant. We paid the placement agent commissions of $193&#160;thousand plus $50&#160;thousand in expenses in connection with the registered direct offering and the concurrent private placement and we also paid legal, accounting and other fees of $231&#160;thousand related to the offering. Total offering costs of $510&#160;thousand have been presented as a reduction of additional paid-in capital and have been netted within equity in the Condensed Consolidated Balance Sheet as of December&#160;31, 2020. In addition, we issued warrants to the placement agent to purchase up to 48,185 shares of common stock at an exercise price of $4.99 per share. Net proceeds to us from the sale of common stock and warrants (the &#8220;January 2020 Equity Offering&#8221;) were approximately $2.3 million. In accordance with the terms of the Iliad Note (as defined below in Note 7, &#8220;Debt&#8221;), 10% of the gross proceeds from the January 2020 Equity Offering ($275&#160;thousand) were used to make payments on the Iliad Note, of which $226&#160;thousand went towards the outstanding principal amount and the balance to interest.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Warrants to purchase an aggregate of 310,860 shares remain outstanding at March&#160;31, 2021 with a weighted average exercise price of $3.59 per share. The exercise of warrants could provide us with cash proceeds of up to $1.1 million in the aggregate. During the three months ended March 31, 2021, 156,446 warrants were exercised resulting in total proceeds of $527 thousand. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Due to a potential cash settlement upon occurrence of a fundamental transaction within the warrant agreement, the warrants were initially classified as liabilities, as opposed to equity, and were recorded at their fair values at each balance sheet date for the first three quarters of 2020. During December 2020, the warrant holders agreed to a modification of the terms of their warrants which removed the potential cash settlement option upon the occurrence of a fundamental transaction. As such, during the fourth quarter of 2020, the warrant liability was reclassified into equity and the warrants are no longer subject to re-measurement at each balance sheet date. Please also refer to Note 9, &#8220;Stockholders&#8217; Equity&#8221;.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;text-decoration:underline">Fair Value Measurements</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The fair value hierarchy prioritizes the inputs to valuation techniques used to measure fair value, giving the highest priority to unadjusted quoted prices in active markets for identical assets or liabilities (Level 1 measurements) and the lowest priority to unobservable inputs (Level 3 measurements). The three levels of the fair value hierarchy are described below. We classify the inputs used to measure fair value into the following hierarchy:</span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:8.509%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:89.291%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 1</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Unadjusted quoted prices in active markets for identical assets or liabilities.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 2</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Unadjusted quoted prices in active markets for similar assets or liabilities, or unadjusted quoted prices for identical or similar assets or liabilities in markets that are not active, or inputs other than quoted prices that are observable for the asset or liability.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 3</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Unobservable inputs for the asset or liability.</span></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The carrying amounts of certain financial instruments including cash, accounts receivable, accounts payable, and accrued liabilities approximate fair value due to their short maturities. Based on borrowing rates currently available to us for loans with similar terms, the carrying value of borrowings under our revolving credit facilities also approximates fair value.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">A financial instrument&#8217;s level within the fair value hierarchy is based on the lowest level of any input that is significant to the fair value measurement. In determining the appropriate levels, we perform a detailed analysis of the assets and liabilities whose fair value is measured on a recurring basis. We review and reassess the fair value hierarchy classifications on a quarterly basis. Changes from one quarter to the next related to the observability of inputs in a fair value measurement may result in a reclassification between fair value hierarchy levels. There were no reclassifications for all periods presented.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The estimated fair value of warrants accounted for as liabilities, representing a level 3 fair value measure, was determined on the issuance date and subsequently marked to market at each financial reporting date. We use the Black-Scholes valuation model to value the warrant liabilities at fair value. The fair value is estimated using the expected volatility based on our historical volatility and is determined using probability weighted-average assumptions, when appropriate.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfAccountingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskCreditRisk">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for credit risk.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 825<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=108315417&amp;loc=d3e61044-112788<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskCreditRisk</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerSharePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3630-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerSharePolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueOfFinancialInstrumentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for determining the fair value of financial instruments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 60<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=7493716&amp;loc=d3e21868-110260<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121572278&amp;loc=d3e13279-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueOfFinancialInstrumentsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRecognitionPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18823-107790<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18823-107790<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRecognitionPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for standard warranties including the methodology for measuring the liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18780-107790<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for treatment of receivables that are billable but have not been billed as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -URI http://asc.fasb.org/topic&amp;trid=2196771<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6191-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6161-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6143-108592<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6061-108592<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6132-108592<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674427288136">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of revenue</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides a disaggregation of product net sales for the periods presented (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:73.975%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.912%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.063%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net sales:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">913&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,736&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MMM products</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,724&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,047&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total net sales</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,637&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,783&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Reconciliation of basic and diluted income (loss) per share</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The following table presents a reconciliation of basic and diluted loss per share computations (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:97.597%"><tr><td style="width:1.0%"/><td style="width:73.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.053%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.876%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.056%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Numerator:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,642)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(541)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Denominator:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted average shares of common stock outstanding *</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,612&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,086&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="12" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;&#160;* Shares outstanding for prior periods have been restated for the 1-for-5 stock split effective June 11, 2020.</span></div></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Schedule of warranty activity</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes warranty activity for the periods presented (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:74.425%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.761%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.764%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at beginning of period</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">227&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">195&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Warranty accruals for current period sales</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustments to existing warranties</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">In kind settlements made during the period</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(19)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accrued warranty reserve at end of period</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">239&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">240&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock', window );">Schedule of Assets and Liabilities Measured on Recurring Basis</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The following table provides a summary of the financial assets and liabilities measured at fair value on a recurring basis as of March 31, 2020 (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:20.221%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.912%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.151%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.770%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.151%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.770%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.151%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.774%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements at March&#160;31, 2020 Using</span></div></td></tr><tr style="height:17pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance as of</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets<br/>&#160;(Level 1)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Other Observable Inputs <br/>(Level 2)</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" rowspan="2" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs<br/>&#160;(Level 3)</span></td></tr><tr style="height:23pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline">Description</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Warrant liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">763&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">763&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock', window );">Schedule of valuation assumptions</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The following inputs were used at March 31, 2020:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:42.893%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.866%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.001%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.167%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.001%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.272%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expected</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Risk-Free</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expected</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Volatility</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Interest Rate</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Life</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Warrants with greater than one-year remaining term</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">97.05%</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">0.34% - 0.36%</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">4.29 -  4.79 years</span></div></td></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock', window );">Level 3 Fair Value Reconciliation</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">A roll-forward of fair value measurements using significant unobservable inputs (Level 3) for the warrants is as follows (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:79.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.270%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended March 31, 2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Balance January 1, 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Issuance of warrants, January 2020</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">1,636&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Gain from change in fair value of warrants</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">(873)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Balance March 31, 2020</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">763&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=121604090&amp;loc=SL49130545-203045<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of input and valuation technique used to measure fair value and change in valuation approach and technique for each separate class of asset and liability measured on recurring and nonrecurring basis.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the fair value measurement of liabilities using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets), and gains or losses recognized in other comprehensive income (loss) and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs) by class of liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&amp;loc=d3e19207-110258<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&amp;loc=d3e19279-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&amp;loc=d3e19207-110258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674427495528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringAndRelatedActivitiesAbstract', window );"><strong>Restructuring and Related Activities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock', window );">Schedule of Restructuring Reserve by Type of Cost</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a reconciliation of the beginning and ending balances of our restructuring liability as it relates to the restructuring plans (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:58.359%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.869%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.400%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.872%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at December 31, 2020 and 2019</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accretion of lease obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at March 31, 2021 and 2020</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a reconciliation of the ending balance of our restructuring liability at March&#160;31, 2021 to the balance sheet:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:58.359%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.869%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.400%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.872%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at March 31, 2021 and 2020</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less, short-term restructuring liability</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term restructuring liability, included in other liabilities</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringAndRelatedActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringAndRelatedActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost. This element may also include a description of any reversal and other adjustment made during the period to the amount of an accrued liability for restructuring activities. This element may be used to encapsulate the roll forward presentations of an entity's restructuring reserve by type of cost and in total, and explanation of changes that occurred in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674432233768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of inventory</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories are stated at the lower of standard cost (which approximates actual cost determined using the first-in, first-out cost method) or net realizable value, and consist of the following (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.815%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.569%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Raw materials</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,373&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,695&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,125&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,840&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reserves for excess, obsolete, and slow-moving inventories </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,983)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,894)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Inventories, net</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,515&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,641&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a roll-forward of the reserves for excess, obsolete, and slow-moving inventories (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.815%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.569%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31, 2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Twelve months ended December 31, 2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beginning balance</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,894)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,518)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrual</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(101)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">281&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reduction due to sold inventory</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">343&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Reserves for excess, obsolete, and slow-moving inventories</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,983)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,894)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6361739&amp;loc=d3e7789-107766<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674427575176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Schedule of property and equipment</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment are stated at cost and depreciated using the straight-line method over the estimated useful lives of the related assets and consist of the following (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.815%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.569%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,<br/>2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,<br/>2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Equipment (useful life 3 to 15 years)</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,281&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,281&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tooling (useful life 2 to 5 years)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">240&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">240&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vehicles (useful life 5 years)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Furniture and fixtures (useful life 5 years)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">137&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">137&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer software (useful life 3 years)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,121&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,057&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements (the shorter of useful life or lease life)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">169&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">169&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease right-of-use asset</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Projects in progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">152&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">140&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Property and equipment at cost</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,193&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,084&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,711)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,664)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Property and equipment, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">482&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">420&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674433471176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeaseCostTableTextBlock', window );">Components of Lease Cost and Supplemental Cash Flow Information</a></td>
<td class="text"><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of the operating, restructured and finance lease costs recognized in net loss for the three months ended March&#160;31, 2021 and 2020, were as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.515%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.851%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.568%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating lease cost (income)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sub-lease income</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">152&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost, net</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">127&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:8pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Restructured lease cost (income)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sub-lease income</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructured lease income, net</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(12)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:11pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total lease cost, net</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">120&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock', window );">Schedule of Supplemental Balance Sheet Information</a></td>
<td class="text"><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to the Company&#8217;s operating and finance leases as of March&#160;31, 2021 and December&#160;31, 2020 are as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.515%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.851%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.568%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">676&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">794&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructured lease right-of-use assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">107&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use assets, total</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">730&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">901&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">781&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">916&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructured lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liabilities, total</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">866&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,084&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:9pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Finance Leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Allowances for depreciation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease assets, net</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:9pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total finance lease liabilities</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock', window );">Schedule of Future Maturities of Finance Lease Liabilities</a></td>
<td class="text"><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future minimum lease payments required under operating, restructured and finance leases for each of the 12-month rolling periods below in effect at March&#160;31, 2021 are as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:34.635%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:14.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.967%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restructured Leases</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restructured Leases Sub-lease Payments</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Finance Lease</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2021 to March 2022</span></td><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">621&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2022 to March 2023</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">175&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2023 to March 2024</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2024 to March 2025</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2025 to March 2026</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total future undiscounted lease payments</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">818&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less imputed interest</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(37)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease obligations</span></td><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">781&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Schedule of Future Maturities of Operating Lease Liabilities</a></td>
<td class="text"><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future minimum lease payments required under operating, restructured and finance leases for each of the 12-month rolling periods below in effect at March&#160;31, 2021 are as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:34.635%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:14.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.967%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restructured Leases</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restructured Leases Sub-lease Payments</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Finance Lease</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2021 to March 2022</span></td><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">621&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2022 to March 2023</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">175&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2023 to March 2024</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2024 to March 2025</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 2025 to March 2026</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total future undiscounted lease payments</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">818&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less imputed interest</span></td><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(37)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease obligations</span></td><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">781&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock', window );">Supplemental Cash Flow Information Related to Leases</a></td>
<td class="text"><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental cash flow information related to leases for the three months ended March&#160;31, 2021 and 2020, was as follows (in thousands):</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.400%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.568%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Supplemental cash flow information</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid, net, for amounts included in the measurement of lease liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from operating leases</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">135&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from restructured leases</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing cash flows from finance leases</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Lease, Supplemental Balance Sheet Information [Table Text Block]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Supplemental Cash Flow Information Related to Leases</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of finance lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to finance lease liability recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseCostTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCostTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674433220248">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2021</div></th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteAbstract', window );"><strong>Stockholders' Equity Note [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock', window );">Schedule of Stockholders' Equity Note, Warrants or Rights</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As of March&#160;31, 2021, we had the following outstanding warrants to purchase shares of common stock:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:47.398%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.570%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Number of Underlying Shares</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Exercise Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expiration</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Investor Warrants</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">269,180</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$3.3700</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 13, 2025</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Placement Agent Warrants</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,680</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$4.9940</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 13, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">310,860</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As of March 31, 2020, we had the following outstanding warrants to purchase shares of common stock:</span></div><div style="margin-bottom:6pt"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:47.398%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.570%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Number of Underlying Shares*</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Exercise Price</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Expiration</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Investor Warrants</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">688,360</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$3.3700</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 13, 2025</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Placement Agent Warrants</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48,185</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$4.9940</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">January 13, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">736,545</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Summary of stock-based compensation expense</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes stock-based compensation expense and the impact it had on operations for the periods presented (in thousands):</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.815%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.569%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of sales</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Product development</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general, and administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">132&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total stock-based compensation</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">140&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">Schedule of valuation assumptions</a></td>
<td class="text">Estimates utilized in the calculation include the expected life of the option, risk-free interest rate, and expected volatility, and are further detailed below. <table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:64.966%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.400%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.568%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fair value of options issued*</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.26&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.12&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exercise price*</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.51&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.48&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected life of options (in years)</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.2</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.1</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Risk-free interest rate</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.8&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.7&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected volatility</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">92.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dividend yield</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="12" style="background-color:#cceeff;padding:2px 1pt;text-align:left;text-indent:9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*Prior year options have been restated for the 1-for-5 reverse stock split effective June 11, 2020.</span></td></tr></table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Summary of option activity</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of option activity under all outstanding stock incentive plans for the three months ended March 31, 2021 is presented as follows:</span></div><div><span><br/></span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:47.398%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.570%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Number of<br/>Options</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted<br/>Average<br/>Exercise<br/>Price Per<br/>Share</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted<br/>Average<br/>Remaining<br/>Contractual<br/>Life (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">221,450&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.45&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">72,120&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.51&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canceled/forfeited</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,459)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.77&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expired</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,500)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53.50&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at March 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">287,611&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.71&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.9</span></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Vested and expected to vest at March 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">228,312&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.68&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.8</span></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Exercisable at March 31, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,154&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.25&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.1</span></td></tr><tr><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock', window );">Summary of restricted stock activity</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of restricted stock unit activity under all outstanding stock incentive plans for the three months ended March 31, 2021 is presented as follows:</span></div><div style="margin-bottom:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%"><tr><td style="width:1.0%"/><td style="width:47.398%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.566%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.570%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Restricted<br/>Stock Units</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted<br/>Average<br/>Grant<br/>Date<br/>Fair Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Weighted<br/>Average<br/>Remaining<br/>Contractual<br/>Life (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,480&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.64&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,000&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.26&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,280)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12.40&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at March 31, 2021</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53,200&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.37&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.4</span></td></tr><tr><td colspan="3" style="display:none"/></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=115993241&amp;loc=d3e301413-122809<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of warrants or rights issued. Warrants and rights outstanding are derivative securities that give the holder the right to purchase securities (usually equity) from the issuer at a specific price within a certain time frame. Warrants are often included in a new debt issue to entice investors by a higher return potential. The main difference between warrants and call options is that warrants are issued and guaranteed by the company, whereas options are exchange instruments and are not issued by the company. Also, the lifetime of a warrant is often measured in years, while the lifetime of a typical option is measured in months. Disclose the title of issue of securities called for by warrants and rights outstanding, the aggregate amount of securities called for by warrants and rights outstanding, the date from which the warrants or rights are exercisable, and the price at which the warrant or right is exercisable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 50<br> -Section S99<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6784392&amp;loc=d3e188667-122775<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674426088648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Nature of Operations (Details)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Jun. 11, 2020 </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th">
<div>Mar. 31, 2021 </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>$ / shares </div>
<div>shares</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Organization, Consolidation and Presentation of Financial Statements [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1', window );">Reverse stock split ratio</a></td>
<td class="nump">0.2<span></span>
</td>
<td class="nump">0.2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in usd per share) | $ / shares</a></td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, authorized (in shares) | shares</a></td>
<td class="nump">50,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50,000,000<span></span>
</td>
<td class="nump">50,000,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Ratio applied to the conversion of stock split, for example but not limited to, one share converted to two or two shares converted to one.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SAB TOPIC 4.C)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187143-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteStockSplitConversionRatio1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674433035640">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies - Certain Risks and Concentrations (Details)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer concentration risk</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer concentration risk | Distributor To The U.S. Navy | Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk</a></td>
<td class="nump">50.00%<span></span>
</td>
<td class="nump">38.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer concentration risk | Distributor To The U.S. Navy | Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk</a></td>
<td class="nump">45.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">28.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer concentration risk | Distributor for the U.S. Navy and a Regional Commercial Lighting Retrofit Company | Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk</a></td>
<td class="nump">11.00%<span></span>
</td>
<td class="nump">15.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer concentration risk | Distributor for the U.S. Navy and a Regional Commercial Lighting Retrofit Company | Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk</a></td>
<td class="nump">16.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer concentration risk | Distributor To The U.S. Navy Combined With Sales To Shipbuilders | Revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk</a></td>
<td class="nump">57.00%<span></span>
</td>
<td class="nump">46.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer concentration risk | Shipbuilder For U.S. Navy | Accounts receivable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">21.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_SupplierConcentrationRiskMember', window );">Supplier concentration risk | Offshore Supplier</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk</a></td>
<td class="nump">26.00%<span></span>
</td>
<td class="nump">22.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_SupplierConcentrationRiskMember', window );">Supplier concentration risk | Offshore Supplier | Accounts Payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk</a></td>
<td class="nump">39.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">44.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_SupplierConcentrationRiskMember', window );">Supplier concentration risk | Domestic Supplier | Accounts Payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember', window );">Geographic concentration risk | Revenue | Countries outside of the United States</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskLineItems', window );"><strong>Concentration Risk [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=121572278&amp;loc=d3e13531-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121572278&amp;loc=d3e13537-108611<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=efoi_DistributorToTheU.S.NavyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=efoi_DistributorToTheU.S.NavyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=efoi_RegionalCommercialLightingRetrofitCompanyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=efoi_RegionalCommercialLightingRetrofitCompanyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=efoi_ShipbuilderForUSNavyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=efoi_ShipbuilderForUSNavyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_SupplierConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_SupplierConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis=efoi_OffshoreSupplierMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis=efoi_OffshoreSupplierMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsPayableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsPayableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis=efoi_DomesticSupplierMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis=efoi_DomesticSupplierMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=us-gaap_NonUsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=us-gaap_NonUsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674432212792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies - Disaggregation of Revenue (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">$ 2,637<span></span>
</td>
<td class="nump">$ 3,783<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=efoi_CommercialProductsMember', window );">Commercial</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">913<span></span>
</td>
<td class="nump">1,736<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=efoi_MMMProductsMember', window );">MMM products</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">Net sales</a></td>
<td class="nump">$ 1,724<span></span>
</td>
<td class="nump">$ 2,047<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9031-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9038-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e9054-108599<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=efoi_CommercialProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=efoi_CommercialProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=efoi_MMMProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=efoi_MMMProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674432460312">
<tr>
<th class="tl" colspan="2" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies - Reconciliation of Basic and Diluted Loss per Share (Details) - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Numerator:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="num">$ (1,642)<span></span>
</td>
<td class="num">$ (541)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasicAndDilutedAbstract', window );"><strong>Denominator:</strong></a></td>
<td class="th" style="border-bottom: 0px;"><sup></sup></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted', window );">Basic weighted average common shares outstanding (in shares)</a></td>
<td class="th" style="border-bottom: 0px;"><sup>[1]</sup></td>
<td class="nump">3,612<span></span>
</td>
<td class="nump">3,086<span></span>
</td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">* Shares outstanding for prior periods have been restated for the 1-for-5 reverse stock split effective June 11, 2020.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasicAndDilutedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasicAndDilutedAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669619-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8924-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22595-107794<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121641772&amp;loc=SL7669625-108580<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8736-108599<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22499-107794<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8906-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22583-107794<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121326447&amp;loc=SL5780133-109256<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=120311839&amp;loc=d3e8933-108599<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Average number of shares or units issued and outstanding that are used in calculating basic and diluted earnings per share (EPS).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674433563752">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies - Net Loss per Share (Details) - shares<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_StockOptionMember', window );">Equity Option</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems', window );"><strong>Impairment Effects on Earnings Per Share [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from net loss per share calculation (in shares)</a></td>
<td class="nump">79,000<span></span>
</td>
<td class="nump">300<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems', window );"><strong>Impairment Effects on Earnings Per Share [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from net loss per share calculation (in shares)</a></td>
<td class="nump">2,000<span></span>
</td>
<td class="nump">1,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_WarrantMember', window );">Warrant</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems', window );"><strong>Impairment Effects on Earnings Per Share [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from net loss per share calculation (in shares)</a></td>
<td class="nump">106,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_ConvertiblePreferredStockMember', window );">Convertible securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems', window );"><strong>Impairment Effects on Earnings Per Share [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from net loss per share calculation (in shares)</a></td>
<td class="nump">519,000<span></span>
</td>
<td class="nump">452,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_StockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_StockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_WarrantMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_WarrantMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_ConvertiblePreferredStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_ConvertiblePreferredStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674433427208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies - Product Warranties (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">18 Months Ended</th>
<th class="th" colspan="1">60 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2016</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember', window );">Commercial LEDFL Tubular LED Lamps (Excluding Battery Backup TLED), Troffer Luminaires, And Certain Globe Lights</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_StandardProductWarrantyNumberofYears', window );">Warranty service periods</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=efoi_OtherLEDProductsMember', window );">Other LED Products</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_StandardProductWarrantyNumberofYears', window );">Warranty service periods</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">5 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_ProductOrServiceAxis=efoi_LEDFLTubularLEDLampsExcludingRedCapsMember', window );">LEDFL Tubular LED Lamps (Excluding Red Caps)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_StandardProductWarrantyNumberofYears', window );">Warranty service periods</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_StandardProductWarrantyNumberofYears', window );">Warranty service periods</a></td>
<td class="text">1 year<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | D-Series Lamps</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_StandardProductWarrantyNumberofYears', window );">Warranty service periods</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_StandardProductWarrantyNumberofYears', window );">Warranty service periods</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | D-Series Lamps</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_StandardProductWarrantyNumberofYears', window );">Warranty service periods</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_StandardProductWarrantyNumberofYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Standard Product Warranty, Number of Years</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_StandardProductWarrantyNumberofYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyLiabilityLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyLiabilityLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=efoi_OtherLEDProductsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=efoi_OtherLEDProductsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=efoi_LEDFLTubularLEDLampsExcludingRedCapsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=efoi_LEDFLTubularLEDLampsExcludingRedCapsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=efoi_DSeriesLampsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=efoi_DSeriesLampsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674427294280">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies - Warranty Activity (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward', window );"><strong>Movement in Standard and Extended Product Warranty, Increase (Decrease) [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Balance at beginning of period</a></td>
<td class="nump">$ 227<span></span>
</td>
<td class="nump">$ 195<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued', window );">Warranty accruals for current period sales</a></td>
<td class="nump">17<span></span>
</td>
<td class="nump">7<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease', window );">Adjustments to existing warranties</a></td>
<td class="nump">14<span></span>
</td>
<td class="nump">44<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPayments', window );">In kind settlements made during the period</a></td>
<td class="num">(19)<span></span>
</td>
<td class="num">(6)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Accrued warranty reserve at end of period</a></td>
<td class="nump">$ 239<span></span>
</td>
<td class="nump">$ 240<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.15(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph ((c)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in the standard product warranty accrual from changes in estimates attributable to preexisting product warranties. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph ((c)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in the standard product warranty accrual from warranties issued. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph ((c)(3))<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualWarrantiesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674432986840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies - Financial Instruments (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Nov. 25, 2019</div></th>
<th class="th"><div>Jan. 31, 2020</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfStockLineItems', window );"><strong>Class of Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Warrants issued (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">310,860<span></span>
</td>
<td class="nump">736,545<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.59<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_PaymentsForClearingFees', window );">Amount paid for clearing fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 231<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsOfStockIssuanceCosts', window );">Offering costs paid on the issuance of common stock and warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">$ (474)<span></span>
</td>
<td class="num">$ (510)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentProceedsToBePaidToLenderPercent', window );">Percentage of gross proceeds used to make payments on note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOrSaleOfEquity', window );">Gross proceeds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 275<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfNotesPayable', window );">Payments on the Iliad Note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">226<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfWarrants', window );">Proceeds from issuance of warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised', window );">Warrants exercised (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(156,446)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromWarrantExercises', window );">Proceeds from the exercise of warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 527<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_NotePurchaseAgreementMember', window );">Note Purchase Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfStockLineItems', window );"><strong>Class of Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentProceedsToBePaidToLenderPercent', window );">Percentage of gross proceeds used to make payments on note</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfNotesPayable', window );">Payments on the Iliad Note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 226<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_InstitutionalInvestorMember', window );">Investor Warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfStockLineItems', window );"><strong>Class of Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction', window );">Sale of common stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">688,360<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.37<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Warrants issued (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">688,360<span></span>
</td>
<td class="nump">269,180<span></span>
</td>
<td class="nump">688,360<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.37<span></span>
</td>
<td class="nump">$ 3.3700<span></span>
</td>
<td class="nump">$ 3.3700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare', window );">Purchase price (in usd per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.625<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=us-gaap_PrivatePlacementMember', window );">Placement Agent Warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfStockLineItems', window );"><strong>Class of Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Warrants issued (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">48,185<span></span>
</td>
<td class="nump">41,680<span></span>
</td>
<td class="nump">48,185<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4.99<span></span>
</td>
<td class="nump">$ 4.9940<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_PaymentsForPlacementAgentCommissions', window );">Amount paid for placement agent commissions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 193<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement', window );">Amount paid related to expenses for registered direct offering and concurrent private placement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 50<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_ClassOfWarrantOrRightWarrantsIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Class Of Warrant Or Right, Warrants Issued</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_ClassOfWarrantOrRightWarrantsIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Class Of Warrant Or Right, Warrants Issued, Price Per Share</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_DebtInstrumentProceedsToBePaidToLenderPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Proceeds To Be Paid To Lender, Percent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_DebtInstrumentProceedsToBePaidToLenderPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_PaymentsForClearingFees">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Payments For Clearing Fees</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_PaymentsForClearingFees</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_PaymentsForPlacementAgentCommissions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Payments For Placement Agent Commissions</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_PaymentsForPlacementAgentCommissions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Payments Related To Expenses For Registered Direct Offering And Concurrent Private Placement</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Proceeds from the Issuance of Common Stock and Warrants, Net of Issuance Costs</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ClassOfStockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfStockLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Exercise price per share or per unit of warrants or rights outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfStockIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for cost incurred directly with the issuance of an equity security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfStockIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from issuance of rights to purchase common shares at predetermined price (usually issued together with corporate debt).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfWarrants</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOrSaleOfEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the issuance of common stock, preferred stock, treasury stock, stock options, and other types of equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOrSaleOfEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromWarrantExercises">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the amount received from holders exercising their stock warrants.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromWarrantExercises</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for a borrowing supported by a written promise to pay an obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares issued or sold by the subsidiary or equity method investee per stock transaction.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SaleOfStockPricePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Per share amount received by subsidiary or equity investee for each share of common stock issued or sold in the stock transaction.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SaleOfStockPricePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of non-option equity instruments exercised by participants.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_NotePurchaseAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=efoi_NotePurchaseAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_InstitutionalInvestorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsidiarySaleOfStockAxis=efoi_InstitutionalInvestorMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsidiarySaleOfStockAxis=us-gaap_PrivatePlacementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsidiarySaleOfStockAxis=us-gaap_PrivatePlacementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>R36.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674510482168">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies - Financial Assets and Liabilities Measured at Fair Value (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent', window );">Warrant liabilities</a></td>
<td class="nump">$ 763<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Fair Value, Recurring</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent', window );">Warrant liabilities</a></td>
<td class="nump">763<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Fair Value, Recurring | Quoted Prices in Active Markets for Identical Assets (Level 1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent', window );">Warrant liabilities</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Fair Value, Recurring | Significant Other Observable Inputs (Level 2)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent', window );">Warrant liabilities</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Fair Value, Recurring | Significant Unobservable Inputs (Level 3)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent', window );">Warrant liabilities</a></td>
<td class="nump">$ 763<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the liabilities, classified as other, for deferred compensation arrangements payable within one year or the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 710<br> -SubTopic 10<br> -Section 25<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=6409733&amp;loc=d3e19512-108361<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 710<br> -SubTopic 10<br> -Section 30<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6409875&amp;loc=d3e20028-108363<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R37.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674432980728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies - Fair Value Inputs (Details)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Expected volatility</a></td>
<td class="nump">96.30%<span></span>
</td>
<td class="nump">92.80%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected life (in years)</a></td>
<td class="text">6 years 2 months 12 days<span></span>
</td>
<td class="text">6 years 1 month 6 days<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_WarrantMember', window );">Warrant</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Expected volatility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">97.05%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum', window );">Risk free interest rate, minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.34%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum', window );">Risk free interest rate, maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.36%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_WarrantMember', window );">Warrant | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected life (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">4 years 3 months 14 days<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementEquityComponentsAxis=us-gaap_WarrantMember', window );">Warrant | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems', window );"><strong>Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected life (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">4 years 9 months 14 days<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum risk-free interest rate assumption that is used in valuing an option on its own shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The minimum risk-free interest rate assumption that is used in valuing an option on its own shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=115993241&amp;loc=d3e301413-122809<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_WarrantMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_WarrantMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674429151928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation and Summary of Significant Accounting Policies - Rollforward of Fair Value Measurements (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent', window );">Balance January 1, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues', window );">Issuance of warrants, January 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,636<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FairValueAdjustmentOfWarrants', window );">Gain from change in fair value of warrants</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(873)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent', window );">Balance March 31, 2020</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 763<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueAdjustmentOfWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (income) related to adjustment to fair value of warrant liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 480<br> -SubTopic 10<br> -Section 25<br> -Paragraph 13<br> -URI http://asc.fasb.org/extlink&amp;oid=109262497&amp;loc=d3e20148-110875<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAdjustmentOfWarrants</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of issuances of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the liabilities, classified as other, for deferred compensation arrangements payable within one year or the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 710<br> -SubTopic 10<br> -Section 25<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=6409733&amp;loc=d3e19512-108361<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 710<br> -SubTopic 10<br> -Section 30<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6409875&amp;loc=d3e20028-108363<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674516713960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring - Narrative (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2020</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringAndRelatedActivitiesAbstract', window );"><strong>Restructuring and Related Activities [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringCosts', window );">Restructuring</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (19,000)<span></span>
</td>
<td class="num">$ (14,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock</a></td>
<td class="nump">$ 2,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Stockholders' equity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,278,000<span></span>
</td>
<td class="nump">$ 5,883,000<span></span>
</td>
<td class="nump">$ 4,255,000<span></span>
</td>
<td class="nump">$ 1,714,000<span></span>
</td>
<td class="nump">$ 3,996,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Proceeds from the Issuance of Common Stock and Warrants, Net of Issuance Costs</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringAndRelatedActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringAndRelatedActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after cash payment, of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI http://asc.fasb.org/extlink&amp;oid=27010918&amp;loc=d3e74512-122707<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=75031198&amp;loc=d3e14064-108612<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674433657864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Restructuring - Reconciliation of Restructuring Liability (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringReserveRollForward', window );"><strong>Restructuring Reserve [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringReserveCurrent', window );">Less, short-term restructuring liability</a></td>
<td class="nump">$ 5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 11<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringPlanAxis=efoi_A2017RestructuringPlanMember', window );">2017 Restructuring Plan | Restructuring liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringReserveRollForward', window );"><strong>Restructuring Reserve [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringReserve', window );">Beginning balance</a></td>
<td class="nump">11<span></span>
</td>
<td class="nump">$ 38<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuringReserveAccretion', window );">Accretion of lease obligations</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForRestructuring', window );">Payments</a></td>
<td class="num">(6)<span></span>
</td>
<td class="num">(8)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringReserve', window );">Ending balance</a></td>
<td class="nump">5<span></span>
</td>
<td class="nump">31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringReserveCurrent', window );">Less, short-term restructuring liability</a></td>
<td class="nump">5<span></span>
</td>
<td class="nump">24<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestructuringReserveNoncurrent', window );">Long-term restructuring liability, included in other liabilities</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 7<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuringReserveAccretion">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructuring Reserve, Accretion</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuringReserveAccretion</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRestructuring">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash payments made as the result of exit or disposal activities. Excludes payments associated with a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3367-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRestructuring</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringReserve">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount (including both current and noncurrent portions of the accrual) as of the balance sheet date pertaining to a specified type of cost associated with exit from or disposal of business activities or restructuring pursuant to a duly authorized plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB TOPIC 5.P.4(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringReserve</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringReserveCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of known and estimated obligations associated with exit from or disposal of business activities or restructurings pursuant to a duly authorized plan, which are expected to be paid in the next twelve months or in the normal operating cycle if longer. Costs of such activities include those for one-time termination benefits, termination of an operating lease or other contract, consolidating or closing facilities, relocating employees, and costs associated with an ongoing benefit arrangement, but excludes costs associated with the retirement of a long-lived asset.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.P.4(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=115931487&amp;loc=d3e140904-122747<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringReserveCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringReserveNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of known and estimated costs associated with exit from or disposal of business activities or restructurings pursuant to a duly authorized plan, which are expected to be paid after one year or beyond the next operating cycle, if longer. Costs of such activities include those for one-time termination benefits, termination of an operating lease or other contract, consolidating or closing facilities, and relocating employees, and costs associated with an ongoing benefit arrangement, but excludes costs associated with the retirement of a long-lived asset.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 420<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6394359&amp;loc=d3e17939-110869<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringReserveNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringReserveRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringReserveRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringPlanAxis=efoi_A2017RestructuringPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringPlanAxis=efoi_A2017RestructuringPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestructuringCostAndReserveAxis=us-gaap_FacilityClosingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestructuringCostAndReserveAxis=us-gaap_FacilityClosingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674427397208">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories - Inventories, Net (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">$ 4,373<span></span>
</td>
<td class="nump">$ 2,695<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoodsNetOfReserves', window );">Finished goods</a></td>
<td class="nump">6,125<span></span>
</td>
<td class="nump">5,840<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_InventoryValuationReservesRawMaterials', window );">Reserves for excess, obsolete, and slow-moving inventories</a></td>
<td class="num">(2,983)<span></span>
</td>
<td class="num">(2,894)<span></span>
</td>
<td class="num">$ (3,518)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories, net</a></td>
<td class="nump">$ 7,515<span></span>
</td>
<td class="nump">$ 5,641<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_InventoryValuationReservesRawMaterials">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Inventory Valuation Reserves, Raw Materials</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_InventoryValuationReservesRawMaterials</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryFinishedGoodsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121566466&amp;loc=d3e6676-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.6(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterialsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011343&amp;loc=d3e100047-122729<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryRawMaterialsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674433379160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories - Reserve Rollforward (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_InventoryReserveRollForward', window );"><strong>Inventory, Reserve [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_InventoryValuationReservesRawMaterials', window );">Beginning balance</a></td>
<td class="num">$ (2,894)<span></span>
</td>
<td class="num">$ (3,518)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_InventoryValuationReservesProvisionAccrual', window );">Accrual</a></td>
<td class="num">(101)<span></span>
</td>
<td class="nump">281<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_InventoryValuationReservesSalesOfInventory', window );">Reduction due to sold inventory</a></td>
<td class="nump">12<span></span>
</td>
<td class="nump">343<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_InventoryValuationReservesRawMaterials', window );">Reserves for excess, obsolete, and slow-moving inventories</a></td>
<td class="num">$ (2,983)<span></span>
</td>
<td class="num">$ (2,894)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_InventoryReserveRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Inventory, Reserve</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_InventoryReserveRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_InventoryValuationReservesProvisionAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Inventory Valuation Reserves, Provision (Accrual)</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_InventoryValuationReservesProvisionAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_InventoryValuationReservesRawMaterials">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Inventory Valuation Reserves, Raw Materials</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_InventoryValuationReservesRawMaterials</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_InventoryValuationReservesSalesOfInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Inventory Valuation Reserves, Sales Of Inventory</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_InventoryValuationReservesSalesOfInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674429867608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment - Schedule of Property and Equipment (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment at cost</a></td>
<td class="nump">$ 3,193<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,084<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less: accumulated depreciation</a></td>
<td class="num">(2,711)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2,664)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">482<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">420<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">47<span></span>
</td>
<td class="nump">$ 46<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember', window );">Equipment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment at cost</a></td>
<td class="nump">$ 1,281<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,281<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember', window );">Equipment | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember', window );">Equipment | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">15 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=efoi_ToolingMember', window );">Tooling</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment at cost</a></td>
<td class="nump">$ 240<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">240<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=efoi_ToolingMember', window );">Tooling | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">2 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=efoi_ToolingMember', window );">Tooling | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember', window );">Vehicles</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment at cost</a></td>
<td class="nump">$ 80<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">47<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and fixtures</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment at cost</a></td>
<td class="nump">$ 137<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">137<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember', window );">Computer software</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Useful life (in years)</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment at cost</a></td>
<td class="nump">$ 1,121<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,057<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold improvements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment at cost</a></td>
<td class="nump">169<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">169<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=efoi_FinanceLeaseRightOfUseAssetMember', window );">Finance lease right-of-use asset</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment at cost</a></td>
<td class="nump">13<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ConstructionInProgressMember', window );">Projects in progress</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment at cost</a></td>
<td class="nump">$ 152<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 140<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.14)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.13)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=efoi_ToolingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=efoi_ToolingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=efoi_FinanceLeaseRightOfUseAssetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=efoi_FinanceLeaseRightOfUseAssetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ConstructionInProgressMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ConstructionInProgressMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674432203832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Narrative (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Jan. 21, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LesseeOperatingLeaseInterestRateEffectiveRate', window );">Operating lease, borrowing rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">15.93%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseDiscountRate', window );">Operating lease, discount rate</a></td>
<td class="nump">7.25%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating lease, weighted average remaining lease term</a></td>
<td class="text">1 year 7 months 6 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm', window );">Restructured lease, weighted average remaining lease term</a></td>
<td class="text">3 months 18 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1', window );">Finance lease, weighted average remaining lease term</a></td>
<td class="text">1 year 1 month 6 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RestrictedCash', window );">Restricted cash held in other assets</a></td>
<td class="nump">$ 342<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 342<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_LesseeOperatingLeaseInterestRateEffectiveRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Lessee, Operating Lease, Interest Rate, Effective Rate</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_LesseeOperatingLeaseInterestRateEffectiveRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Leases, Operating Lease, Weighted Average Remaining Lease Term</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=121568110&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseDiscountRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Discount rate used by lessee to determine present value of operating lease payments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918673-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseDiscountRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=121568110&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestrictedCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash restricted as to withdrawal or usage. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=SL98516268-108586<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(1)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RestrictedCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674429554648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Components of Lease Cost (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubleaseIncome', window );">Sub-lease income</a></td>
<td class="num">$ (25)<span></span>
</td>
<td class="num">$ (25)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseCost', window );">Lease cost</a></td>
<td class="nump">143<span></span>
</td>
<td class="nump">152<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_OperatingLeaseCostNetOfSubleaseIncome', window );">Operating lease cost, net</a></td>
<td class="nump">118<span></span>
</td>
<td class="nump">127<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeaseSubleaseIncome', window );">Sub-lease income</a></td>
<td class="num">(68)<span></span>
</td>
<td class="num">(68)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeaseOperatingLeaseCost', window );">Lease cost</a></td>
<td class="nump">56<span></span>
</td>
<td class="nump">61<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome', window );">Restructured lease income, net</a></td>
<td class="num">(12)<span></span>
</td>
<td class="num">(7)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeaseCost', window );">Total lease cost, net</a></td>
<td class="nump">$ 106<span></span>
</td>
<td class="nump">$ 120<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_OperatingLeaseCostNetOfSubleaseIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Operating Lease, Cost, Net Of Sublease Income</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_OperatingLeaseCostNetOfSubleaseIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeaseOperatingLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Lease, Operating Lease, Cost</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeaseOperatingLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Lease, Operating Lease, Cost, Net Of Sublease Income</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeaseSubleaseIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Lease, Sublease Income</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeaseSubleaseIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lease cost recognized by lessee for lease contract.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=121568110&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=121568110&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubleaseIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of sublease income excluding finance and operating lease expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=121568110&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubleaseIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674433260360">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Schedule of Supplemental Balance Sheet Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesOperatingAbstract', window );"><strong>Operating Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">$ 676<span></span>
</td>
<td class="nump">$ 794<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredOperatingLeaseRightOfUseAsset', window );">Restructured lease right-of-use assets</a></td>
<td class="nump">54<span></span>
</td>
<td class="nump">107<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases', window );">Operating lease right-of-use assets, total</a></td>
<td class="nump">730<span></span>
</td>
<td class="nump">901<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Operating lease liabilities</a></td>
<td class="nump">781<span></span>
</td>
<td class="nump">916<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredOperatingLeaseLiability', window );">Restructured lease liabilities</a></td>
<td class="nump">85<span></span>
</td>
<td class="nump">168<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases', window );">Operating lease liabilities, total</a></td>
<td class="nump">866<span></span>
</td>
<td class="nump">1,084<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeFinanceLeaseDescriptionAbstract', window );"><strong>Finance Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_FinanceLeaseRightOfUseAssetGross', window );">Property and equipment</a></td>
<td class="nump">13<span></span>
</td>
<td class="nump">13<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation', window );">Allowances for depreciation</a></td>
<td class="num">(10)<span></span>
</td>
<td class="num">(9)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAsset', window );">Finance lease assets, net</a></td>
<td class="nump">3<span></span>
</td>
<td class="nump">4<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Finance lease liabilities</a></td>
<td class="nump">$ 3<span></span>
</td>
<td class="nump">$ 4<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Finance Lease, Right-Of-Use Asset, Accumulated Depreciation</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_FinanceLeaseRightOfUseAssetGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Finance Lease, Right-Of-Use Asset, Gross</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_FinanceLeaseRightOfUseAssetGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_OperatingLeaseLiabilityIncludingRestructuredLeases">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Operating Lease, Liability, Including Restructured Leases</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_OperatingLeaseLiabilityIncludingRestructuredLeases</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Operating Lease, Right-of-Use Asset, Including Restructured Leases</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Operating Lease, Liability</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredOperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Operating Lease, Right-Of-Use Asset</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredOperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesOperatingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesOperatingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeFinanceLeaseDescriptionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeFinanceLeaseDescriptionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>R47.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674433120168">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Schedule of Future Maturities of Lease Liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract', window );"><strong>Operating Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths', window );">April 2021 to March 2022</a></td>
<td class="nump">$ 621<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo', window );">April 2022 to March 2023</a></td>
<td class="nump">175<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree', window );">April 2023 to March 2024</a></td>
<td class="nump">16<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour', window );">April 2024 to March 2025</a></td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive', window );">April 2025 to March 2026</a></td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total future undiscounted lease payments</a></td>
<td class="nump">818<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less imputed interest</a></td>
<td class="num">(37)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total lease obligations</a></td>
<td class="nump">781<span></span>
</td>
<td class="nump">$ 916<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract', window );"><strong>Restructured Leases</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths', window );">April 2021 to March 2022</a></td>
<td class="nump">86<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo', window );">April 2022 to March 2023</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree', window );">April 2023 to March 2024</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour', window );">April 2024 to March 2025</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive', window );">April 2025 to March 2026</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue', window );">Total future undiscounted lease payments</a></td>
<td class="nump">86<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less imputed interest</a></td>
<td class="num">(1)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredOperatingLeaseLiability', window );">Total lease obligations</a></td>
<td class="nump">85<span></span>
</td>
<td class="nump">168<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract', window );"><strong>Restructured Leases Sub-lease Payments</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths', window );">April 2021 to March 2022</a></td>
<td class="num">(68)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo', window );">April 2022 to March 2023</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree', window );">April 2023 to March 2024</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour', window );">April 2024 to March 2025</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive', window );">April 2025 to March 2026</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LessorOperatingLeasePaymentsToBeReceived', window );">Total future undiscounted lease payments</a></td>
<td class="num">(68)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less imputed interest</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_OperatingLeaseReceivable', window );">Total lease obligations</a></td>
<td class="num">(68)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract', window );"><strong>Finance Lease</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths', window );">April 2021 to March 2022</a></td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo', window );">April 2022 to March 2023</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree', window );">April 2023 to March 2024</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour', window );">April 2024 to March 2025</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive', window );">April 2025 to March 2026</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDue', window );">Total future undiscounted lease payments</a></td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount', window );">Less imputed interest</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Total lease obligations</a></td>
<td class="nump">$ 3<span></span>
</td>
<td class="nump">$ 4<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Lessor, Operating Lease, Liability, Undiscounted Excess Amount</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_OperatingLeaseReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Operating Lease, Receivable</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_OperatingLeaseReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Five</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Four</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Three</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due in Rolling Year Two</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due Next Rolling Twelve Months</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Leases, Lessee, Operating Lease, Liability, Undiscounted Excess Amount</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Leases, Operating Lease Liabilities, Payments, Due, Rolling Maturity [Abstract]</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Operating Lease, Liability</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease, due after fifth fiscal year following latest statement of financial position date. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease, due in fifth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease, due in fourth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease, due in third rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease, due in second rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fifth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fourth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for operating lease, due in third rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for operating lease, due in second rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for operating lease, due in next rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LessorOperatingLeasePaymentsToBeReceived">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lease payments to be received by lessor for operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121576215&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceived</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lease payments to be received by lessor in next rolling twelve months following latest statement of financial position date for operating lease. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121576215&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lease payments to be received by lessor in fifth rolling twelve months following latest statement of financial position date for operating lease. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121576215&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lease payments to be received by lessor in fourth rolling twelve months following latest statement of financial position date for operating lease. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121576215&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lease payments to be received by lessor in third rolling twelve months following latest statement of financial position date for operating lease. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121576215&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of lease payments to be received by lessor in second rolling twelve months following latest statement of financial position date for operating lease. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 30<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121576215&amp;loc=SL77919396-209981<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674429327240">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Schedule of Supplemental Cash Flow Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Operating cash flows from operating leases</a></td>
<td class="nump">$ 136<span></span>
</td>
<td class="nump">$ 135<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_RestructuredLeasesOperatingLeasePayments', window );">Operating cash flows from restructured leases</a></td>
<td class="nump">17<span></span>
</td>
<td class="nump">17<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FinanceLeasePrincipalPayments', window );">Financing cash flows from finance leases</a></td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_RestructuredLeasesOperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Restructured Leases, Operating Lease, Payments</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_RestructuredLeasesOperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeasePrincipalPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for principal payment on finance lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeasePrincipalPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121603541&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121609121&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674434149992">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Debt - Credit Facilities (Details)<br></strong></div></th>
<th class="th">
<div>Aug. 11, 2020 </div>
<div>USD ($) </div>
<div>creditFacility</div>
</th>
<th class="th">
<div>Dec. 11, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Apr. 20, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentNumberOfCreditFacilities', window );">Number of debt financing facilities | creditFacility</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Credit line borrowings, net of loan origination fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,416,000<span></span>
</td>
<td class="nump">$ 2,298,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Inventory Facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity on line of credit</a></td>
<td class="nump">$ 3,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent', window );">Inventory costs</a></td>
<td class="nump">75.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent', window );">Inventory, net orderly liquidation value</a></td>
<td class="nump">85.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="nump">5.75%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22.40%<span></span>
</td>
<td class="nump">23.60%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent', window );">Monthly service fee</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LineOfCreditFacilityMonthlyFacilityFee', window );">Minimum monthly fee</a></td>
<td class="nump">$ 18,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnamortizedDebtIssuanceExpense', window );">Amortized net issuance costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100,000<span></span>
</td>
<td class="nump">$ 100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Credit line borrowings, net of loan origination fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,700,000<span></span>
</td>
<td class="nump">$ 1,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Inventory Facility | Subsequent Event</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity on line of credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Inventory Facility | London Interbank Offered Rate (LIBOR)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="nump">4.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Receivables Facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity on line of credit</a></td>
<td class="nump">$ 2,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7.60%<span></span>
</td>
<td class="nump">7.90%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent', window );">Monthly service fee</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LineOfCreditFacilityMonthlyFacilityFee', window );">Minimum monthly fee</a></td>
<td class="nump">$ 25,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent', window );">Percent of accounts receivable used as borrowing capacity</a></td>
<td class="nump">90.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee', window );">Stated interest rate on collateral management fee</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnamortizedDebtIssuanceExpense', window );">Amortized net issuance costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 30,000<span></span>
</td>
<td class="nump">$ 40,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Credit line borrowings, net of loan origination fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 700,000<span></span>
</td>
<td class="nump">$ 1,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Receivables Facility | Prime Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="nump">2.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Austin Facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity on line of credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,000,000.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.25%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Credit line borrowings, net of loan origination fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 800,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityExpirationPeriod', window );">Line of credit term (in years)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityCommitmentFeePercentage', window );">Annual facility fee</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod', window );">Annual facility fee, payment period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LineOfCreditFacilityCollateralManagementFee', window );">Collateral management fee</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsOfDebtExtinguishmentCosts', window );">Payment to close Austin credit facility</a></td>
<td class="nump">$ 1,400,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFeeAmount', window );">Termination fee</a></td>
<td class="nump">100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WriteOffOfDeferredDebtIssuanceCost', window );">Write off of remaining issuance costs</a></td>
<td class="nump">$ 59,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility | Austin Facility | Prime Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Margin added to borrowing rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Interest Rate, Stated Percentage, Collateral Management Fee</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_DebtInstrumentNumberOfCreditFacilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Number Of Credit Facilities</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_DebtInstrumentNumberOfCreditFacilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_LineOfCreditFacilityAnnualFacilityFeePeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line Of Credit Facility, Annual Facility Fee, Period</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_LineOfCreditFacilityAnnualFacilityFeePeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line of Credit Facility, Borrowing Capacity, Inventory Costs, Percent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line of Credit Facility, Borrowing Capacity, Inventory Value, Percent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line of Credit Facility, Borrowing Capacity, Value Of Accounts Receivable, Percent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_LineOfCreditFacilityCollateralManagementFee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line Of Credit Facility, Collateral Management Fee</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_LineOfCreditFacilityCollateralManagementFee</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_LineOfCreditFacilityMonthlyFacilityFee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line Of Credit Facility, Monthly Facility Fee</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_LineOfCreditFacilityMonthlyFacilityFee</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_LineOfCreditFacilityMonthlyFacilityFeePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line Of Credit Facility, Monthly Facility Fee, Percent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_LineOfCreditFacilityMonthlyFacilityFeePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage points added to the reference rate to compute the variable rate on the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentBasisSpreadOnVariableRate1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFeeAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of the fee that accompanies borrowing money under the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFeeAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityCommitmentFeePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The fee, expressed as a percentage of the line of credit facility, for the line of credit facility regardless of whether the facility has been used.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityCommitmentFeePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Period remaining on line of credit facility before it terminates, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityExpirationPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LinesOfCreditCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The carrying value as of the balance sheet date of the current portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(13))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LinesOfCreditCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfDebtExtinguishmentCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for cost from early extinguishment and prepayment of debt. Includes, but is not limited to, third-party cost, premium paid, and other fee paid to lender directly for debt extinguishment or debt prepayment. Excludes accrued interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDebtExtinguishmentCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnamortizedDebtIssuanceExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The remaining balance of debt issuance expenses that were capitalized and are being amortized against income over the lives of the respective bond issues. This does not include the amounts capitalized as part of the cost of the utility plant or asset.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnamortizedDebtIssuanceExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WriteOffOfDeferredDebtIssuanceCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Write-off of amounts previously capitalized as debt issuance cost in an extinguishment of debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.8)<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WriteOffOfDeferredDebtIssuanceCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_InventoryFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=efoi_InventoryFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=us-gaap_LondonInterbankOfferedRateLIBORMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_LondonInterbankOfferedRateLIBORMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_ReceivablesFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=efoi_ReceivablesFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=us-gaap_PrimeRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_PrimeRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_AustinFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=efoi_AustinFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674429855416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt - Convertible Notes (Details) - Convertible Debt - USD ($)<br> $ / shares in Units, $ in Millions</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">7 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 01, 2021</div></th>
<th class="th"><div>Jan. 16, 2020</div></th>
<th class="th"><div>Mar. 29, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Jan. 16, 2020</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt', window );">Proceeds from issuance of subordinated convertible promissory notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.7<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt', window );">Interest rate on convertible notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.00%<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_AccumulatedInterestOnSubordinatedDebt', window );">Accumulated interest on subordinated debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock', window );">Net proceeds from the conversion of convertible debt to preferred stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.8<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentConvertibleConversionPrice1', window );">Conversion rate (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.67<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.67<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Conversion of notes to stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,709,018<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Preferred Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConversionOfStockSharesConverted1', window );">Preferred stock converted to common stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">111,548<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Preferred Stock | Subsequent Event</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConversionOfStockSharesConverted1', window );">Preferred stock converted to common stock (in shares)</a></td>
<td class="nump">1,721,023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Common Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion', window );">Common stock issued upon preferred stock conversion (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22,310<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Common Stock | Subsequent Event</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion', window );">Common stock issued upon preferred stock conversion (in shares)</a></td>
<td class="nump">344,205<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_AccumulatedInterestOnSubordinatedDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accumulated Interest on Subordinated Debt</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_AccumulatedInterestOnSubordinatedDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Net proceeds from the conversion of convertible debt to preferred stock</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConversionOfStockSharesConverted1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares converted in a noncash (or part noncash) transaction. Noncash is defined as transactions during a period that do not result in cash receipts or cash payments in the period. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=d3e4313-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=d3e4304-108586<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=d3e4332-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConversionOfStockSharesConverted1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued for each share of convertible preferred stock that is converted.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21506-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtConversionOriginalDebtInterestRateOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The rate of interest that was being paid on the original debt issue that is being converted in the noncash (or part noncash) transaction. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=d3e4332-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=d3e4304-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtConversionOriginalDebtInterestRateOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentConvertibleConversionPrice1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The price per share of the conversion feature embedded in the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120520924&amp;loc=SL6031898-161870<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentConvertibleConversionPrice1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from a borrowing where a lender is placed in a lien position behind debt having a higher priority of repayment (senior) in liquidation of the entity's assets or underlying collateral.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of new stock issued during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_PreferredStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_PreferredStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_CommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_CommonStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674433075976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt - Iliad Note (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 01, 2020</div></th>
<th class="th"><div>Nov. 25, 2019</div></th>
<th class="th"><div>Jan. 31, 2020</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentProceedsToBePaidToLenderPercent', window );">Percentage of gross proceeds used to make payments on note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOrSaleOfEquity', window );">Gross proceeds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 275,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfNotesPayable', window );">Payments on the Iliad Note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 226,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_NotePurchaseAgreementMember', window );">Note Purchase Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Principal amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentUnamortizedPremium', window );">Issue discount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">142,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfDebt', window );">Purchase price</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredFinanceCostsGross', window );">Unamortized debt issuance costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_WriteOffOfDeferredDebtIssuanceCost', window );">Write off of remaining issuance costs</a></td>
<td class="nump">$ 117,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentProceedsToBePaidToLenderPercent', window );">Percentage of gross proceeds used to make payments on note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfNotesPayable', window );">Payments on the Iliad Note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 226,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Total liability, net of discount and financing fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">900,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet', window );">Unamortized issuance costs at date of issuance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 200,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_DebtInstrumentProceedsToBePaidToLenderPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Proceeds To Be Paid To Lender, Percent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_DebtInstrumentProceedsToBePaidToLenderPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentCarryingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120520924&amp;loc=SL6031897-161870<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentCarryingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=119993939&amp;loc=d3e28551-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of unamortized debt discount (premium) and debt issuance costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120520924&amp;loc=SL6031897-161870<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=119993939&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentUnamortizedPremium">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt premium.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1A<br> -URI http://asc.fasb.org/extlink&amp;oid=119993939&amp;loc=d3e28541-108399<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentUnamortizedPremium</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFinanceCostsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, before accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=119993939&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFinanceCostsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow during the period from additional borrowings in aggregate debt. Includes proceeds from short-term and long-term debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOrSaleOfEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the issuance of common stock, preferred stock, treasury stock, stock options, and other types of equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOrSaleOfEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for a borrowing supported by a written promise to pay an obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WriteOffOfDeferredDebtIssuanceCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Write-off of amounts previously capitalized as debt issuance cost in an extinguishment of debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.8)<br> -URI http://asc.fasb.org/extlink&amp;oid=120395209&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WriteOffOfDeferredDebtIssuanceCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_NotePurchaseAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=efoi_NotePurchaseAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674432407112">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Debt - Streeterville Note (Details) - Streeterville Note - Subsequent Event<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Apr. 27, 2021 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Principal amount</a></td>
<td class="nump">$ 1,700<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentUnamortizedDiscount', window );">Issue discount</a></td>
<td class="nump">194<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfDebt', window );">Purchase price</a></td>
<td class="nump">1,500<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredFinanceCostsGross', window );">Unamortized debt issuance costs</a></td>
<td class="nump">$ 15<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=119993939&amp;loc=d3e28551-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentUnamortizedDiscount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt discount.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1A<br> -URI http://asc.fasb.org/extlink&amp;oid=119993939&amp;loc=d3e28541-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentUnamortizedDiscount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFinanceCostsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, before accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=119993939&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFinanceCostsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow during the period from additional borrowings in aggregate debt. Includes proceeds from short-term and long-term debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_StreetervilleNotePurchaseAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=efoi_StreetervilleNotePurchaseAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<FILENAME>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674433361384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt - PPP Loan (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Apr. 17, 2020</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_PaymentProtectionProgramCurrent', window );">PPP loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 529<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_PaymentProtectionProgramNoncurrent', window );">PPP loan, net of current maturities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 266<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Gain on forgiveness of PPP loan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 801<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_PaycheckProtectionProgramCARESActMember', window );">Paycheck Protection Program</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromLoanOriginations1', window );">Proceeds from loan origination</a></td>
<td class="nump">$ 795<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_PaymentProtectionProgramCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Payment Protection Program, Current</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_PaymentProtectionProgramCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_PaymentProtectionProgramNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Payment Protection Program, Noncurrent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_PaymentProtectionProgramNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainsLossesOnExtinguishmentOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12355-112629<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 50<br> -Section 40<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117329964&amp;loc=d3e12317-112629<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainsLossesOnExtinguishmentOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromLoanOriginations1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Cash inflow associated with loan origination (the process when securing a mortgage for a piece of real property) or lease origination.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3179-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromLoanOriginations1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_PaycheckProtectionProgramCARESActMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=efoi_PaycheckProtectionProgramCARESActMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<FILENAME>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674510380328">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Income Taxes - Narrative (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2017</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations', window );">Deferred tax assets, operating loss carryforwards, portion available after application of IRC Section 382 limitations</a></td>
<td class="nump">$ 61.5<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwards', window );">Operating loss carry-forwards</a></td>
<td class="nump">7.1<span></span>
</td>
<td class="nump">$ 8.3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration', window );">Operating loss, subject to expiration</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 37.3<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember', window );">U.S. Federal, State and Local tax authorities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Deferred tax assets, operating loss carry-forwards</a></td>
<td class="nump">115.9<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember', window );">State and Local Jurisdiction</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLossCarryforwardsLineItems', window );"><strong>Operating Loss Carryforwards [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards', window );">Deferred tax assets, operating loss carry-forwards</a></td>
<td class="nump">$ 72.3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Deferred Tax Assets, Operating Loss Carryforwards, Portion Available After Application Of IRC Section 382 Limitations</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards that are subject to expiration dates.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32559-109319<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLossCarryforwardsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLossCarryforwardsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<FILENAME>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674430171208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Stock Split (Details)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Jun. 11, 2020 </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th">
<div>Mar. 31, 2021 </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>$ / shares </div>
<div>shares</div>
</th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteAbstract', window );"><strong>Stockholders' Equity Note [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1', window );">Reverse stock split ratio</a></td>
<td class="nump">0.2<span></span>
</td>
<td class="nump">0.2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in usd per share) | $ / shares</a></td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock, authorized (in shares) | shares</a></td>
<td class="nump">50,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50,000,000<span></span>
</td>
<td class="nump">50,000,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteStockSplitConversionRatio1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Ratio applied to the conversion of stock split, for example but not limited to, one share converted to two or two shares converted to one.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SAB TOPIC 4.C)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187143-122770<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteStockSplitConversionRatio1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>66
<FILENAME>R56.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674430207928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Preferred Stock (Details) - USD ($)<br> $ / shares in Units, $ in Millions</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Apr. 01, 2021</div></th>
<th class="th"><div>Jan. 16, 2020</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Jun. 11, 2020</div></th>
<th class="th"><div>Jan. 15, 2020</div></th>
<th class="th"><div>Mar. 29, 2019</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, authorized (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,000,000<span></span>
</td>
<td class="nump">5,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,000,000<span></span>
</td>
<td class="nump">2,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in usd per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_PercentageOfSeriesAPreferredStockEligibleToVote', window );">Votes equal to the number of shares of common stock convertible</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">11.07%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=us-gaap_ConvertiblePreferredStockMember', window );">Series A Convertible Preferred Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, authorized (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,300,000<span></span>
</td>
<td class="nump">3,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,300,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Convertible Debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock', window );">Net proceeds from the conversion of convertible debt to preferred stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1.8<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentConvertibleConversionPrice1', window );">Conversion rate (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.67<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Conversion of notes to stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,709,018<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in usd per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.0001<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Convertible Debt | Preferred Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConversionOfStockSharesConverted1', window );">Preferred stock converted to common stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">111,548<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Convertible Debt | Preferred Stock | Subsequent Event</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConversionOfStockSharesConverted1', window );">Preferred stock converted to common stock (in shares)</a></td>
<td class="nump">1,721,023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Convertible Debt | Common Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion', window );">Common stock issued upon preferred stock conversion (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Convertible Debt | Common Stock | Subsequent Event</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion', window );">Common stock issued upon preferred stock conversion (in shares)</a></td>
<td class="nump">344,205<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Net proceeds from the conversion of convertible debt to preferred stock</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_PercentageOfSeriesAPreferredStockEligibleToVote">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Percentage of Series A Preferred Stock Eligible to Vote</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_PercentageOfSeriesAPreferredStockEligibleToVote</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConversionOfStockSharesConverted1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares converted in a noncash (or part noncash) transaction. Noncash is defined as transactions during a period that do not result in cash receipts or cash payments in the period. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=d3e4313-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=d3e4304-108586<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=d3e4332-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConversionOfStockSharesConverted1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued for each share of convertible preferred stock that is converted.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21506-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentConvertibleConversionPrice1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The price per share of the conversion feature embedded in the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120520924&amp;loc=SL6031898-161870<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentConvertibleConversionPrice1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of new stock issued during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementClassOfStockAxis=us-gaap_ConvertiblePreferredStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=us-gaap_ConvertiblePreferredStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_PreferredStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_PreferredStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_CommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_CommonStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674510362840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Issuance of Common Stock and Warrants (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Nov. 25, 2019</div></th>
<th class="th"><div>Jan. 31, 2020</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Warrants issued (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">310,860<span></span>
</td>
<td class="nump">736,545<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.59<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_PaymentsForClearingFees', window );">Amount paid for clearing fees</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 231<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsOfStockIssuanceCosts', window );">Payments of Stock Issuance Costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">$ (474)<span></span>
</td>
<td class="num">$ (510)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts', window );">Proceeds from sale of common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentProceedsToBePaidToLenderPercent', window );">Percentage of gross proceeds used to make payments on note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOrSaleOfEquity', window );">Gross proceeds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 275<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfNotesPayable', window );">Payments on the Iliad Note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">226<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfWarrants', window );">Proceeds from issuance of warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised', window );">Warrants exercised (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(156,446)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromWarrantExercises', window );">Proceeds from the exercise of warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 527<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_NotePurchaseAgreementMember', window );">Note Purchase Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentProceedsToBePaidToLenderPercent', window );">Percentage of gross proceeds used to make payments on note</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RepaymentsOfNotesPayable', window );">Payments on the Iliad Note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 226<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_InstitutionalInvestorMember', window );">Investor Warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction', window );">Sale of common stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">688,360<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SaleOfStockPricePerShare', window );">Sale of common stock (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.37<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Warrants issued (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">688,360<span></span>
</td>
<td class="nump">269,180<span></span>
</td>
<td class="nump">688,360<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.37<span></span>
</td>
<td class="nump">$ 3.3700<span></span>
</td>
<td class="nump">$ 3.3700<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare', window );">Purchase price (in usd per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.625<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=us-gaap_PrivatePlacementMember', window );">Placement Agent Warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Warrants issued (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">48,185<span></span>
</td>
<td class="nump">41,680<span></span>
</td>
<td class="nump">48,185<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4.99<span></span>
</td>
<td class="nump">$ 4.9940<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_PaymentsForPlacementAgentCommissions', window );">Amount paid for placement agent commissions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 193<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement', window );">Amount paid related to expenses for registered direct offering and concurrent private placement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 50<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_ClassOfWarrantOrRightWarrantsIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Class Of Warrant Or Right, Warrants Issued</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_ClassOfWarrantOrRightWarrantsIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Class Of Warrant Or Right, Warrants Issued, Price Per Share</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_DebtInstrumentProceedsToBePaidToLenderPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Proceeds To Be Paid To Lender, Percent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_DebtInstrumentProceedsToBePaidToLenderPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_PaymentsForClearingFees">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Payments For Clearing Fees</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_PaymentsForClearingFees</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_PaymentsForPlacementAgentCommissions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Payments For Placement Agent Commissions</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_PaymentsForPlacementAgentCommissions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Payments Related To Expenses For Registered Direct Offering And Concurrent Private Placement</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Proceeds from the Issuance of Common Stock and Warrants, Net of Issuance Costs</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Exercise price per share or per unit of warrants or rights outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfStockIssuanceCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for cost incurred directly with the issuance of an equity security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfStockIssuanceCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfWarrants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from issuance of rights to purchase common shares at predetermined price (usually issued together with corporate debt).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfWarrants</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOrSaleOfEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from the issuance of common stock, preferred stock, treasury stock, stock options, and other types of equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOrSaleOfEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromWarrantExercises">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the amount received from holders exercising their stock warrants.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromWarrantExercises</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RepaymentsOfNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for a borrowing supported by a written promise to pay an obligation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3291-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares issued or sold by the subsidiary or equity method investee per stock transaction.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SaleOfStockPricePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Per share amount received by subsidiary or equity investee for each share of common stock issued or sold in the stock transaction.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SaleOfStockPricePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of non-option equity instruments exercised by participants.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_NotePurchaseAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=efoi_NotePurchaseAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_InstitutionalInvestorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsidiarySaleOfStockAxis=efoi_InstitutionalInvestorMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsidiarySaleOfStockAxis=us-gaap_PrivatePlacementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsidiarySaleOfStockAxis=us-gaap_PrivatePlacementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<FILENAME>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674432315848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Warrants (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteAbstract', window );"><strong>Stockholders' Equity Note [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Number of Underlying Shares (in shares)</a></td>
<td class="nump">310,860<span></span>
</td>
<td class="nump">736,545<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise price of common stock (in dollars per share)</a></td>
<td class="nump">$ 3.59<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_ClassOfWarrantOrRightWarrantsIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Class Of Warrant Or Right, Warrants Issued</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_ClassOfWarrantOrRightWarrantsIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Exercise price per share or per unit of warrants or rights outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>69
<FILENAME>R59.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674516032440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Schedule of Warrants Outstanding (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2020</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Number of Underlying Shares (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">310,860<span></span>
</td>
<td class="nump">736,545<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise Price (in dollars per share)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3.59<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_InstitutionalInvestorMember', window );">Investor Warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Number of Underlying Shares (in shares)</a></td>
<td class="nump">688,360<span></span>
</td>
<td class="nump">269,180<span></span>
</td>
<td class="nump">688,360<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise Price (in dollars per share)</a></td>
<td class="nump">$ 3.37<span></span>
</td>
<td class="nump">$ 3.3700<span></span>
</td>
<td class="nump">$ 3.3700<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsidiarySaleOfStockAxis=us-gaap_PrivatePlacementMember', window );">Placement Agent Warrants</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_ClassOfWarrantOrRightWarrantsIssued', window );">Number of Underlying Shares (in shares)</a></td>
<td class="nump">48,185<span></span>
</td>
<td class="nump">41,680<span></span>
</td>
<td class="nump">48,185<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1', window );">Exercise Price (in dollars per share)</a></td>
<td class="nump">$ 4.99<span></span>
</td>
<td class="nump">$ 4.9940<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_ClassOfWarrantOrRightWarrantsIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Class Of Warrant Or Right, Warrants Issued</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_ClassOfWarrantOrRightWarrantsIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Exercise price per share or per unit of warrants or rights outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsidiarySaleOfStockAxis=efoi_InstitutionalInvestorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsidiarySaleOfStockAxis=efoi_InstitutionalInvestorMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsidiarySaleOfStockAxis=us-gaap_PrivatePlacementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsidiarySaleOfStockAxis=us-gaap_PrivatePlacementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674514625112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Stock-Based Compensation (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 140<span></span>
</td>
<td class="nump">$ 20<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unearned stock-based compensation</a></td>
<td class="nump">$ 600<span></span>
</td>
<td class="nump">200<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Unearned compensation expected to be recognized, period</a></td>
<td class="text">2 years 6 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember', window );">Cost of sales</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 2<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember', window );">Product development</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">6<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, general, and administrative</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 132<span></span>
</td>
<td class="nump">$ 18<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -URI http://asc.fasb.org/extlink&amp;oid=115993241&amp;loc=d3e301413-122809<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_SellingGeneralAndAdministrativeExpensesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>71
<FILENAME>R61.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674427342040">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Estimates Utilized (Details) - $ / shares<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharePrice', window );">Fair value of options issued (in dollars per share)</a></td>
<td class="nump">$ 4.26<span></span>
</td>
<td class="nump">$ 1.12<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice', window );">Exercise price (in dollars per share)</a></td>
<td class="nump">$ 5.51<span></span>
</td>
<td class="nump">$ 1.48<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected life (in years)</a></td>
<td class="text">6 years 2 months 12 days<span></span>
</td>
<td class="text">6 years 1 month 6 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Risk-free interest rate</a></td>
<td class="nump">0.80%<span></span>
</td>
<td class="nump">0.70%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Expected volatility</a></td>
<td class="nump">96.30%<span></span>
</td>
<td class="nump">92.80%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate', window );">Dividend yield</a></td>
<td class="nump">0.00%<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Agreed-upon price for the exchange of the underlying asset relating to the share-based payment award.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The risk-free interest rate assumption that is used in valuing an option on its own shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Price of a single share of a number of saleable stocks of a company.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=115993241&amp;loc=d3e301413-122809<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<FILENAME>R62.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674432121848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Stock Options and a Summary of Activity (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2021 </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward', window );"><strong>Number of Options</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding at beginning of period (in shares) | shares</a></td>
<td class="nump">221,450<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Granted (in shares) | shares</a></td>
<td class="nump">72,120<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod', window );">Canceled/forfeited (in shares) | shares</a></td>
<td class="num">(4,459)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod', window );">Expired (in shares) | shares</a></td>
<td class="num">(1,500)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding at end of period (in shares) | shares</a></td>
<td class="nump">287,611<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber', window );">Vested and expected to vest at period end (in shares) | shares</a></td>
<td class="nump">228,312<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Exercisable at period end (in shares) | shares</a></td>
<td class="nump">62,154<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward', window );"><strong>Weighted Average Exercise Price Per Share</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding at beginning of period (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 3.45<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted (in dollars per share) | $ / shares</a></td>
<td class="nump">5.51<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice', window );">Canceled/forfeited (in dollars per share) | $ / shares</a></td>
<td class="nump">2.77<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice', window );">Expired (in dollars per share) | $ / shares</a></td>
<td class="nump">53.50<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding at end of period (in dollars per share) | $ / shares</a></td>
<td class="nump">3.71<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice', window );">Vested and expected to vest at period end (in dollars per share) | $ / shares</a></td>
<td class="nump">3.68<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Exercisable at period end (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 4.25<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract', window );"><strong>Weighted Average Remaining Contractual Life (in years)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding at end of period</a></td>
<td class="text">8 years 10 months 24 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1', window );">Vested and expected to vest at period end</a></td>
<td class="text">8 years 9 months 18 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Exercisable at period end</a></td>
<td class="text">8 years 1 month 6 days<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of options or other stock instruments for which the right to exercise has lapsed under the terms of the plan agreements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Gross number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees could have acquired the underlying shares with respect to stock options of the plan that expired.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674429881400">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity - Restricted Stock Units (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2021 </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Outstanding at beginning of period (in dollars per share)</a></td>
<td class="nump">$ 8.64<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice', window );">Canceled/forfeited (in dollars per share)</a></td>
<td class="nump">$ 2.77<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract', window );"><strong>Weighted Average Remaining Contractual Life (in years)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding at end of period</a></td>
<td class="text">8 years 10 months 24 days<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward', window );"><strong>Restricted Stock Units</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber', window );">Outstanding at beginning of period (in shares) | shares</a></td>
<td class="nump">4,480<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares) | shares</a></td>
<td class="nump">50,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares) | shares</a></td>
<td class="num">(1,280)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber', window );">Outstanding at end of period (in shares) | shares</a></td>
<td class="nump">53,200<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted Average Grant Date Fair Value</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in dollars per share)</a></td>
<td class="nump">$ 5.26<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Released (in dollars per share)</a></td>
<td class="nump">12.40<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Outstanding at end of period (in dollars per share)</a></td>
<td class="nump">$ 5.37<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract', window );"><strong>Weighted Average Remaining Contractual Life (in years)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding at end of period</a></td>
<td class="text">1 year 4 months 24 days<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)-(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of equity instruments other than options outstanding, including both vested and non-vested instruments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<FILENAME>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674427366872">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermPurchaseCommitmentLineItems', window );"><strong>Long-term Purchase Commitment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PurchaseObligation', window );">Outstanding purchase commitments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4.2<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_srt_StatementScenarioAxis=srt_ScenarioForecastMember', window );">Scenario, Forecast</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermPurchaseCommitmentLineItems', window );"><strong>Long-term Purchase Commitment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongTermPurchaseCommitmentAmount', window );">Purchase commitment</a></td>
<td class="nump">$ 1.4<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermPurchaseCommitmentAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The minimum amount the entity agreed to spend under the long-term purchase commitment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermPurchaseCommitmentAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermPurchaseCommitmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermPurchaseCommitmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PurchaseObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Minimum amount of purchase arrangement in which the entity has agreed to expend funds to procure goods or services from a supplier.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PurchaseObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementScenarioAxis=srt_ScenarioForecastMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementScenarioAxis=srt_ScenarioForecastMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<FILENAME>R65.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.21.1</span><table class="report" border="0" cellspacing="2" id="idm140674424860152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent Events (Details)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Apr. 27, 2021 </div>
<div>USD ($) </div>
<div>deferral</div>
</th>
<th class="th">
<div>Apr. 01, 2021 </div>
<div>shares</div>
</th>
<th class="th">
<div>Jan. 16, 2020 </div>
<div>shares</div>
</th>
<th class="th">
<div>Dec. 31, 2020 </div>
<div>shares</div>
</th>
<th class="th">
<div>Apr. 20, 2021 </div>
<div>USD ($)</div>
</th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th">
<div>Aug. 11, 2020 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Convertible Debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Conversion of notes to stock (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,709,018<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Convertible Debt | Preferred Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConversionOfStockSharesConverted1', window );">Preferred stock converted to common stock (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">111,548<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember', window );">Convertible Debt | Common Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion', window );">Common stock issued upon preferred stock conversion (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentAxis=efoi_InventoryFacilityMember', window );">Inventory Facility | Revolving Credit Facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">23.60%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22.40%<span></span>
</td>
<td class="nump">5.75%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity on line of credit | $</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,000,000.0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent', window );">Inventory costs</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">75.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent', window );">Inventory, net orderly liquidation value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Common Stock | Fusion Park</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Conversion of notes to stock (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">184,851<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Common Stock | Brilliant Start</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues', window );">Conversion of notes to stock (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">159,354<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Convertible Debt | Preferred Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConversionOfStockSharesConverted1', window );">Preferred stock converted to common stock (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,721,023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Convertible Debt | Common Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion', window );">Common stock issued upon preferred stock conversion (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">344,205<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Streeterville Note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentFaceAmount', window );">Principal amount | $</a></td>
<td class="nump">$ 1,700,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentUnamortizedDiscount', window );">Issue discount | $</a></td>
<td class="nump">194,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfDebt', window );">Purchase price | $</a></td>
<td class="nump">1,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredFinanceCostsGross', window );">Unamortized debt issuance costs | $</a></td>
<td class="nump">$ 15,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="nump">8.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption', window );">Period after issuance after which debt is subject to mandatory redemption</a></td>
<td class="text">6 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount', window );">Debt Instrument Subject To Mandatory Redemption, Maximum Amount | $</a></td>
<td class="nump">$ 205,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals', window );">Right to defer mandatory redemption, number of deferrals | deferral</a></td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Streeterville Note | Debt Instrument, Redemption, Period One</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentPrepaymentPremiumPercent', window );">Prepayment premium</a></td>
<td class="nump">5.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtPrepaymentMaximumPercentage', window );">Debt prepayment limit, percent</a></td>
<td class="nump">50.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption', window );">Percentage increase due to deferral of redemption option</a></td>
<td class="nump">1.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Streeterville Note | Debt Instrument, Redemption, Period Two</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_efoi_DebtInstrumentPrepaymentPremiumPercent', window );">Prepayment premium</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event | Inventory Facility | Revolving Credit Facility</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity on line of credit | $</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Period After Issuance After Which Is Subject To Mandatory Redemption</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_DebtInstrumentPrepaymentPremiumPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument Prepayment Premium Percent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_DebtInstrumentPrepaymentPremiumPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Right To Defer Mandatory Redemption, Number Of Deferrals</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument Subject To Mandatory Redemption, Maximum Amount</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_DebtPrepaymentMaximumPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Debt Prepayment Maximum, Percentage</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_DebtPrepaymentMaximumPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line of Credit Facility, Borrowing Capacity, Inventory Costs, Percent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Line of Credit Facility, Borrowing Capacity, Inventory Value, Percent</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Note Payable, Percentage Increase Due to Deferral of Redemption Option</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>efoi_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConversionOfStockSharesConverted1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The number of shares converted in a noncash (or part noncash) transaction. Noncash is defined as transactions during a period that do not result in cash receipts or cash payments in the period. "Part noncash" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=d3e4313-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=d3e4304-108586<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=121583591&amp;loc=d3e4332-108586<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConversionOfStockSharesConverted1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued for each share of convertible preferred stock that is converted.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21475-112644<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21506-112644<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentFaceAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Face (par) amount of debt instrument at time of issuance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=119993939&amp;loc=d3e28551-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentFaceAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>num:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentUnamortizedDiscount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of debt discount.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1A<br> -URI http://asc.fasb.org/extlink&amp;oid=119993939&amp;loc=d3e28541-108399<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=114775985&amp;loc=d3e28878-108400<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentUnamortizedDiscount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredFinanceCostsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amount, before accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=119993939&amp;loc=d3e28555-108399<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredFinanceCostsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromIssuanceOfDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The cash inflow during the period from additional borrowings in aggregate debt. Includes proceeds from short-term and long-term debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121586364&amp;loc=d3e3255-108585<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesNewIssues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Number of new stock issued during the period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109259400&amp;loc=d3e21463-112644<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI http://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesNewIssues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongtermDebtTypeAxis=us-gaap_ConvertibleDebtMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_PreferredStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_PreferredStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=us-gaap_CommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementEquityComponentsAxis=us-gaap_CommonStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_InventoryFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=efoi_InventoryFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CounterpartyNameAxis=efoi_FusionParkMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CounterpartyNameAxis=efoi_FusionParkMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CounterpartyNameAxis=efoi_BrilliantStartMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CounterpartyNameAxis=efoi_BrilliantStartMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=efoi_StreetervilleNotePurchaseAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentAxis=efoi_StreetervilleNotePurchaseAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentRedemptionPeriodAxis=us-gaap_DebtInstrumentRedemptionPeriodOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentRedemptionPeriodAxis=us-gaap_DebtInstrumentRedemptionPeriodOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentRedemptionPeriodAxis=us-gaap_DebtInstrumentRedemptionPeriodTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentRedemptionPeriodAxis=us-gaap_DebtInstrumentRedemptionPeriodTwoMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>76
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( .9$K5('04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    " #F1*U2>%>4I^\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9+!
M2L0P$(9?17)O)VU9*:&;B^))07!!\18FL[O!I@W)2+MO;UMWNX@^@,?,_/GF
M&Y@&@\(^TG/L T5VE&Y&WW9)8=B*(W-0  F/Y$W*IT0W-?=]](:G9SQ ,/AA
M#@2EE+?@B8TU;& &9F$E"MU85!C)<!_/>(LK/GS&=H%9!&K)4\<)BKP H>>)
MX32V#5P!,XPI^O1=(+L2E^J?V*4#XIP<DUM3PS#D0[7DIAT*>'MZ?%G6S5R7
MV'1(TZ_D%)\";<5E\FMU=[][$+J499')3594.UFKJE:;^GUV_>%W%?:]=7OW
MCXTO@KJ!7W>AOP!02P,$%     @ YD2M4IE<G",0!@  G"<  !,   !X;"]T
M:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M
M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R
M>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2P]R"BPA+>!3+
MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,!
M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K
MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2
MBW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_KFVB<"HU;3]-K
M=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K>A(5M>5 TR
M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$
MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)I#-ZG7TZSFN4
M?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R.AQG0GS/]O:1
MI24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG LR+7E$8D19_(
M+;KD$3BU20TR$S\(G8:8:E < J0),9:AAOBTQJP1X!-]M[X(R-^-B/>K;YH]
M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M
MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZ<TT#PE"\D^DJ1CVFS(Z=T)LWH
M,QK!1J\;=8=HTCQZ_@7YG#4*')$;'0)G&[-&(81IN_ >KR2.FJW"$2M"/F(9
M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+
MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T
M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+
M.7\N?<^E[[GT/:'2MS<C?6?!TXM;WD9N6\3[KC':US0N*&-7<LW(QU2ODRG8
M.9_ [/UH/I[Q[?K9)(2OFEDM(Q:02X&S022X_(O*\"K$">AD6R4)RU3393>*
M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W<DOJMI2^M28X
M2O2QS'!.'LL,.V<\DAVV=Z =-?OV77;D(Z4P4Y=#N!I"O@-MNIW<.CB>F)&Y
M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_#
M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0
MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR
ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC
MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYN<KGHB=OJ7
M=\%@\OUPR4</Y3OG7_1=0ZY^]MWC^FZ3.TA,G'G%$0%T10(CE1P&%A<RY%#N
MDI &$P'-E,E$\ *"9*8<@)CZ"[WR#+DI%<ZM/CE_12R#ADY>TB42%(JP# 4A
M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF
M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'<YMZN,)%K/]8UA[Y,M\Y<-LZW@->
MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_
M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]!
MU4#E/]O4#6CV#30<D05>,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04
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
M>3[(6BX]Q*086K!TNW99%LCWP" :AM!>>"-@$T7FJJJ*+M>X6I<PZ"QVS?*
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
M"A-;TAF2-DZ+%)F&/4!) Y0X@?ZEC^!&\/P$%FX<*TC2#1.LWXFF10P#T?7
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
M+/$?")0-P/V%E&8[L0?X_[3L'U!+ P04    " #F1*U261K!.P('  #;(0
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
M5#S[>!LQ.[R&P4'3A8':&*3Q#&9#/Q"P/H#.:V/PZ/@9G7Y)^3]02P,$%
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
M*(VU %UZ;;M318+O&BG"J2]WAO?N=SZ/I,6/HH3D-^_0R<]R.V%]HLM8Z0T
M:+NSU9 >+W*.<YA<A7AVDX[,(M,N[?LS<]B?F;G%0-3L+S<;PD\>5*D!84UD
M4^]+5S,^%PJ5)$[B=L97MY<!X<Q>D/>CJ(]9_!MZ8LZDLH0V*Z>8Y<*0P(*4
M[0C:'M_LN0O ?'0+0R?<R%V3RRZ. .E"-HP.U]F+=(O;3T]W85Q_-FC:..44
M6+J8??]FHGRZ7Z:7Z!JYTZU=1.60QU).1#P!WPOG8O_"&PR7_//_ %!+ P04
M    " #F1*U2DM">)V$:  !G40  &0   'AL+W=O<FMS:&5E=',O<VAE970Q
M,2YX;6S=7&ESVTAS_BM3>N6W[!1%\]!I>UTE7QLE:UNQY'6E4ODP!(;D6"#
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
MO\,N2NA>]7F!D!SPQ:Q"PZ9!$-['17O*92_R#06_3)*:":@0N\PTCQ5CC<,
M:@W A61?1"K0#662V68K,00DW23^#KV=%IA;$,'*L,<+(<0K&7 6)AD!G/(7
M9K$LJCLCM360C=:F](P#V2J58%Q#EL>:6GI(H;W@^QHB;BK6Q*(A+OS)9LS!
M @V?9E(4J3#7XY2 9)%7OJO>HE'=28\,WG.B(53IV #9Q-C"=";)@#@,1;T'
MKRQ4:0%9:9IAPZ3&0'O0W"U-\JU/46+V7<.F#EEJR+*6PD#%<4MBDR>,<E)M
M0"<R<=M!#S(.0)%[I 2_:8Z F2"Z!8?>VJS##Z=RXS)P)S^K[*LK+B:P*T5M
M&N=X\C!#7RQ%FKIM -;8*)3.LA2/,:A1\ U[0]1A>Z9(&<H'3KY<H5,8)J0C
MY@UW([S6LQG4!Z&3Y$6Q68+XO!+;!H])KE7K@ P'^.-Z$XT2!B7D%L+[,QKF
M21FRK\Z&8_@[[)V,C]7[]^^C%N&CT:$:]0:')^IZK;K:A\^/QR?P?]P[.1U[
M4.4(O G,_[B)]9(B0&;&R+)O/T\@%W)(H385^Q,DQ1QC%<IUS8ICIXKJQG!]
M;'#M&#&'\9&,=X"ZFMOS?G#<X_S2@!!56SH<_41P(5$C;I]T,+E6W!:"!0V"
MT?"Z?'U<) 0V!$*=YF+J;:&)'?$6SK9L\(2TGX^"HV#=$'GLIK8.V3@GC=9&
M%Q".4"G4]Z2PTS:V\/"+M9<J#_(8!PKD;U;KA<S](2C/YEY,*PAS\[OD6E_@
MKM#Y0T,."2XPW:B%_HJ.=^=YWF8VM)IO#FA%J(VEY$PQ/8!,@" 2&\/7B-X
MP@%T@_B!'>S"5='WF$BBD8\*U(24V*47@+-L)LW_+BZ'N(%FRV. -82UL29:
M%,1KT#C<X[,L8O'$DK\@XS:,'!GII@G+9SZ\-Z_:28,-^FVR::I.YDQ'#[!K
M2^ 3W6W;K<@H85&,N1/455$0HI91>8#@MFNI'$9]Q1-RPH8D"%[$C U%']T3
MYT RM)V)YS2$3[D_LE8QI&E@UFI,&"8>SB#G:K"J*6 GZ@E<:E 8^8+X!?K$
MJL8# V@Y4X9XZ*V$YKE14_A#:H#W@0V7'#R @-!F"+)!$4(2L^-P@.$ PG,<
M$E1*HN*S")$5#EDDI1@XNJ.4#5VG>&"S9$"2L>L/U%.PW)+V0RWCQ8_S#T$)
MW6"*<6$\4+F^<W&.E4NQA=B/Y^Q4P6RAJ:*Y18ASW>W6PR>/P""#&C^KJ=$E
M<H+S#B=$F98R='-&@:UW)!]=W&8M!!+X*">.SVEJ"B:$K9Q()4_O[\E,P7>H
MT'/)&*B<$8A+2H^0EL$RFA4:1UIRI/E\5WU &R_)>[R8@L CQ*+A)S".I\<B
MJMNNS[[ZU6!07@)DZQR]..<3&7AG,J^:VF]Q:H6B+ZKLGLS)&$HW7*CXN),H
M1'#SYM$BE"M%PP<.*5A"WVV+KS"91/ \?,01:Q9E0 Q)EO M1"ETW>89F!QC
MILP$@;-P? RM/@6K?4)4V$Q $X"O479XYBY;_]!2T;%L&T:;- .BP;F_7]]J
M6P11 CC#@)$<<\"[<.<5%5"H+<"K&"IC4*>=')?)\?Y.(,W;VB<JMMF>P%;_
M:6+PF*:7%>52<NC<%BWU'%PX'X;E:M'Z-E'"[HQFQT:.%U1TCB;<'Q;]*8IE
MSP<ME #,M%B2JT/%;+XA$F;T)Q1P&.KY:B1,34'HC44M12'T(!F([7GY >Z1
M(2Q6,@>>\UVE &%Y1T,"Q*V NH*M3LB8*.UOES1;E30'?JP8:!?82*GJ9]&*
M]]7C8>_X</0$7QT=#I^H-Z:L:#Z.U[%I;YC@ ]3X3U D' ]'\'=P>@SOKN26
MY!*N]"W^E2HGIMO:"'[U@7EX *\.CF0G!XF^2;IRU!H>QEX[RQ;'ZAY7!K_S
M/8(Z6?P!@2D8"%(&> 9I8X6T$/ >9CAQ_$NPL-,K/SD+BH0MD]?#P7%X1VL?
M#>.E.S2Q/M.@<-DM5^G$[+; !4@MDR.3D*1-IENN_6W-#1QJ@+"Y1W6M6?T_
M6OZ#(']I'V]3P7W2'?3'72$.?U2$/Z?5PZ/1]S;Z6>5(9^E'U'*YV7&!@$''
MJ5)QXX!E%3I!?&+2NCF\D%;@#'N:?.0GX\-J_N@)@\.JO@&D3KFS+7'4)R4W
M6A()PM2W5@"O=_V((SVHPH[8W_\V/#E\+KVY&L(1P/?Z#OYG-^U27?_V]HU[
MPKJADZ?4)8,/NU/@*48([*VQ)%&XUP1*_3% *V>C^5D9@NZXV\I,G,6SXZ_,
MS)8EGUY2'[.FPOP+<CKK,0GJ<<RIGTS^6B\]X4\(7/%<U0)OB4S1](%+HJL7
M0.Z;@RNLC1Q4QXNE%"V=>XSEZ8:_5749#&7:UOY!-J]0[M@3L#3-"P=:8@\W
MG!"CAEI$CRS<(%CKDFVA2/%WX3FO@J=AH4L:>CY\WLE79#1<=<*7WS9]\( Z
M!%A^K\42WSP&QRLT#P@C85(-YQLE!X0E@-)Z MDV.38:BV4^VB=4L]UN:5'B
MM$(J=Z$\[,SW!/EU5"&L\ZF[& "!1BJPO/"3TEWS0<-I3:5E%D*0=-@]M;0@
MX8R-XY"VQ)X+5:4X1V4#HT7\F)$EE)3HS,Y7'JLEYS7Q?"-G@N#I:XL$ML-I
MQ<Z)22IC>7C10CBD$O86'Q8CX21G]M;::E"O_='J[,Y;X?HVZ;#1:VL*P!IE
M0Z,!%AN=C4V/<(?&@?1HPKK10JA!T%#;BD)OY'?][*F8$NF_N./^Q89ELNIZ
M_N*PH922(&R<B&Y'C.$)'!?OH^?H4DO^BZUB?SI=8RO(QSN,$$S?OAJ-L/4[
M/#N*S@Z5= UFS6'6ST+D!BZVAB?J1)UW!;\N='2KX:$Z/,0.[8VE!.&#B..F
MP$91 +#U[(EZ?/P$*_X:1_SKEH&,&#I[FK P/L._AX,=4WD\9*#+%L_ ^#HS
M/)/@S_0XL'^#Z+PV-%B%DM^#V;0/?'QZVAL?#Y*D3\$H3?Q);P/SJ6W:AD\,
MX?E==$E'YW=T"-*82#):?7_<'Y]$7,#S8&QU.B@>>[$GO3"[EPZ %5N(?@?(
MJO!VD_@.X4A4&8NH7531*?9T2@87WM),)_@&Y9AM_ WZQZ,C6DK(Y!FAMAPG
MXPHTJNO,]_#VX5F"]Y: CM3^T2!^8DN??)P\U5.:Y*$>;M'L5'6<=M[#F73)
MN/^,9!=FIK%S&(]U$*JAK#HU+.7]T3@!IFNAT._?E\%,H"?DA/VC8<)DA($Q
M(F@&YAB/I-[TYZBI/VOS Q2'7MI&L%Q<! "\/TB-XN.'+R3&_Y4GD]9.<V-Y
MP&=V4OO<IO--LST\[0U/CW[8:@_[9V>I+V%Q3"<J3.['[P&5>_?NKEPFU#[&
MR^2)KC28^.=5/HK:P@..A/^[9</^".J5A2V*<-I][6$0*IH(PPHDNH"\E=,3
MB^HQ34&GA$]H!HI:HF].>IZP-V82'B[K^=-B-.ROJ>#PW >^[^-$/=X?G1P%
MPQ..6L>F2ZDW],H%#D5RZ< =0[[]T2@I=5>LXQ4=YB+[3UH'\H1I )/!)_VI
M:]B8^OH0[ (X[48ZG&/(%)8T.AX.>J<QYM4&85YGTXVSE'X@M=$?V1H:CSI&
M=KW6A@KVP\?Y_4RG]9UZ?! IJ 6N9XO?'_:'WE"\,P:N^NI-3)L/:'$,CXY[
MAX?'D12I3)G(7$"XE$%R'CZA:/\( ()7'^Y-6M!)TXZ82 H$ZL=5&0=1EI,&
MO%CF6OIVU%/7,3(+AT(@< H\Q8?_NG1#S2I]3,#(D!KH3 *XA@=XU,C#F+1<
M5F*J'-3\A*/FPQ]UGDY1XY,B=%#&\!DZMCG^]0;"\QX-3&V-8P>2/>#8NJ%N
M^50"GZ@GA$3&'"F'OA=,G/*47 Z&99U)<1H+;)U(@AP+;+FBQZGFYAYMR.&S
MT"1]H&*HVX.3KEZ*TJ: =L!LA6?/<I>Y!&IK&L9$/8'O>G6L%Z;^E B-,]"?
MVLG7<"+L8)&<QMRMG[ZZI">..#W79LKC%@J29R%([G[H4$)G7[U#<_B='AQ*
MSH'R<W[)0T5S"W$!G.V.^YU@?'_**4];+EL.3''ZWYAL7MH_T,1"$.7%DS5[
MV'+WTL8)/#[?)JO3:<JVY'H'%OBCK>@QZ9H>G;?^-S@@--<WX;&E',T":T"9
M"L%GB:NHQ[^96U.HH4HD[)X$Y4":V22@FB 2EQ$^\2FKC+NK<#1D+RGP@I#6
MMLH0];]QS.>+\7Y^EPIVMP#9QII.M17V>*8\NY__H6+LR[JC'UW768CRNMZ^
M*A65._7=)>M[:W$WCS?F1T;]F2PBBK82V3)VI0%<=\=P7V( /B+2INF>=UXF
M8Y#)IL7<=]]WSEFY^ L>'(M]R>?GGF"[*>?I*=3TB<"2!S7R(+B< =M\>'NP
M46_OB@[K0&*@/CM<.I3@M/B_L4PO@UF<LUF\3\SB(NCUG'E*?ZKD(^GG8Q3I
M!8LTO:8C<OG^#?D69X,U.K^LA6Y+Q\).CO$T&87(T?/.*_P&M93!?=08\;T_
MA-#W'2)/VCJ8IWK;GW59?YZ@YQ]4IHY 2F2"KU/=YJW_^1"+R Q_OV&!C3=Q
MUE>^A3>IZIJMC)I*R;FSSABW9:T4%61'>91)?(T2-*>_((OPP&E8W?<0L550
MF]NJH @O1ZNF.@O<8-I*6'()3]CFW";2T 2F")O"J:U!UJ[UDB7 \\TR+"87
M96_'0_.)6?G(&E=. CY5-/XY7)_"TA]TX1Q M:"<^\%3DP:L!8\*:JA5[^17
M;D)DV/1F?C@SC?>)AV_S:3DP35U)+K_YG--N&7G DOD?5\%5!?(4=WY5_S,&
M?$"G#$#0"ZDTWYJ-6E^<DN$13;/)-:FCLEVJU*.5/KD5]CKTA<'*5EY8YG)(
ME]%O66VLX<)48*/;*"5-;*=WGJF.X&W]P&XGCW5':6)MXRT<]P@S>B.*9HJ]
M XJAH:W>.9U%F4W*4HRB 2-&CXE/A3!2_$*E+"W^JM#9S<%5-L=GZA/ !H@<
MR!0,9[9B7,OU0NJF:QC1ND1XK0OG,_Q#+A -=,/V$!QSK7N?7$)=KHZ >$EP
MLDE W5*V'OBR->G#][C]G7CE>KH5BXRU_D96>Z;>>N(_67=S\ [Q7?CH]TCL
MA53JZA,J[3<[-;%DIR@*U8]N/-8 %SJ@W]/A$IT$!4RJLY/^X.@1CGH/'ZD#
M_'_\2!WV1V?PYK!_<B83LG-5 P]XF@!;"S1*V>I/3B26AK7[(.V3 %6"K3-.
MD&>U']*-7\NV'@_XYHO_/&;8"V_NB8OUNLV:8>]X?*Q^I4Q+YZGY21E;[O+0
MQZ<GP(S?>XTD3NG;?GCM:?+C=PM3S^@G_JB=43;\.WCAT_ K@N?\XWGQ<OX)
M0MASAD_-%&8*MP[Z)T=[JN:?]>,W3;6DG]*;5$U3+>CEW&C(G'@!?(^_->3?
MX ;AMQ5?_A=02P,$%     @ YD2M4L?'I0F/#P  TR<  !D   !X;"]W;W)K
M<VAE971S+W-H965T,3(N>&ULS5K;;MPX$OT5PFLL$D"QN]MVXHF3 ,YM)X-,
MXG$F,U@L]H&2J&Z.);%#4N[T?OV>*EZD]B43[+SL0^)NB=?BJ5.GBOUL8^R5
M6RGEQ=>N[=WSO97WZZ>'AZY:J4ZZ [-6/=XTQG;2XZM='KJU5;+F3EU[N)C-
M'A]V4O=[+Y[QLPO[XID9?*M[=6&%&[I.VNU+U9K-\[WY7GIPJ9<K3P\.7SQ;
MRZ7ZI/SG]87%M\,\2JT[U3MM>F%5\WSO?/[TY3&UYP:_:;5QD\^"=E(:<T5?
MWM7/]V:T(-6JRM,($G^NU2O5MC00EO$ECKF7IZ2.T\]I]+>\=^REE$Z],NWO
MNO:KYWNG>Z)6C1Q:?VDV/ZJXGQ,:KS*MX__%)K0]1N-J<-YTL3-6T.D^_)5?
MHQTF'4YG]W18Q X+7G>8B%?Y6GKYXIDU&V&I-4:C#[Q5[HW%Z9X.Y9.W>*O1
MS[^X5,[;H?*#U?WRV:''D/3BL(K=7X;NBWNZ'XF?3>]73KSI:U7O]C_$4O)Z
M%FD]+Q??'/!G:0_$T;P0B]EB_HWQCO+^CGB\H^_9GY!]+2Y5*[VJQ3GA07NM
MG/C7>8E6 ,B_OS'C<9[QF&<\_E\M^B?=WWSZ]?+SJU\_7[[[\ \!Y F_4OAG
ME1)=L+4B6PM8JEIE4_'6=A[-"K%1\)O*6&K>P\'MCC$JJVKMG3"-D.NU-5\U
M0*[:K=B?_X )S>!H3/JW/S_.#PH:9:W8F=HM?0OF](876AF'(:F3:1JGO*>9
MW% ^:A5\1^B^,IWB][+" M@SU5=0#%XV<;-6$9M0Q]#)E*U>2FY*3<Q@Z6^G
MK/@ K_\GO+[(GVA:7:D#MIRLL4%TDRTF#@06N&0I;4WCA]EV$,)DX8275PJ<
MX<1:6D\FNMUTW<K>%?C#BP298$&PP@?CE3@JQ-__=KI8S,YVX%#PP_D9V:$=
MZ%@&G*45[[SJQ&GN\U;WLJ\TEOW)P[C@P&C33\,:T]%W$*@@A\\C8HED&#IX
M<=[W SI?JK6Q_D!\Q//=I;=:EKH-X*^P7>UXCVC#&,#A]4O#&.'CG)QQBS>/
MO+*=0%RPTM]U2C#*9J6!1++9*].M9;_%(6L,<2!^74U >2W;027KICEO#2>T
M8^:E9=T)$%X/V6<MMV0<(3LS]+X0M785?0IK1]1R])9G/1"O5K)?P@"Z)X Z
M]66@E]B5-C7MV8'8:8[&&HR.!]>:0Q%&4AK+B)ZI.VH4H1LFWK5E)=U*-(A^
M<+7KV*L9<!(J3B8D/G;8"1X!$2XA,S@H4/P'XH BS]/N"LL!$\#R1 K2BPTP
M.KBPP3C&'5B='C@LYX&M=GL@+H+]9.O,#0 _SF!\3TU<A%DXO\:TV Z-BY.1
M?)R *^9@]XK'6:JE[OO$NN L^EA*.$VE7(+KW:O<DN-I'W'G$K?<X7[B@>XS
M-;F'3P,7LA.\#%,)V.BUJE178G>)&GE)BQEX;E_,Y_COZ!3Q(/$1UG8;@V2
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
MY"SH4K2;6-7XSKQ6EOJ\'U9TL:)V K1?*F5W$Z=@N*H7_P%02P,$%     @
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
M87<@N0:(=./'"YU\>R10]EFOK?IW'81JGEE\ $Z'.3"(.CJ^F=N'$/C)W+L
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
M86+$NG'= -8#0G0)/'GJD-,97V1)V^-R.88DJIT-=D+A,3%30(0;[,F68Z9
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
MS!G:[;R[C, V<Z(QR%2A-[>&N-/#MN#1BM8[\'UN#)T,'Z =UN,?4$L#!!0
M   ( .9$K5(V@?]<RP8  #$0   9    >&PO=V]R:W-H965T<R]S:&5E=#(P
M+GAM;*58VW+;-A#]E1TUZ=@SK.ZJG<3VC.THEX[;NG'2/G3Z )&0B!HD& "T
M[+_O68"D)4=*T^E#+)( SIY=G-T%<K(V]M;E4GJZ+W3I3GNY]]7+P<"EN2R$
MZYM*EAA9&EL(CU>[&KC*2I&%184>C(?#'P>%4&7O["1\N[9G)Z;V6I7RVI*K
MBT+8APNIS?JT-^JU'SZH5>[YP^#LI!(K>2/]I^K:XFW0H62JD*53IB0KEZ>]
M\]'+BRG/#Q-^5W+M-IZ)/5D8<\LO[[/3WI )22U3SP@"/W?R4FK-0*#QN<'L
M=29YX>9SB_XF^ Y?%L+)2Z/_4)G/3WO'/<KD4M3:?S#K=[+Q9\9XJ=$N_*5U
MG#M^T:.T=MX4S6(P*%09?\5]$X>-!<?#/0O&S8)QX!T-!9:OA1=G)]:LR?)L
MH/%#<#6L!CE5\J;<>(M1A77^[*9>./FYEJ6G^1W^NI.!!RP/#M(&XB)"C/=
M3.AG4_K<T;S,9+:]?@ Z':=QR^EB_%7 GX7MTV24T'@X'GT%;]+Y. EXDV_U
MD?X\7SAOH8B_O@(_[>"G 7[Z?T+X+Q"?+F[FOWV:__*1YK_C[PUA%%LJ[9W2
M6M(OQDLZ=Y0IEVKC9$:JC!^/$OK^N^/Q>/CJM5SX\#AZE1#T?EY9I6E\%,.8
MT%H2R$D;%GM#/I>[K%S7-LTA<SI?8:Q@K];*YT^F5K5UM< 8@-:Y2O, =VF*
M2I0/Y(S.2)0PY%P->YBTPQ)<X$6@6::J$II$86I FB6)JK+F7B'II'Z@9Z/^
M$;2O-=*X3Q]W\UX+UYH+?$5)QJJ5*@$<OH?@M0:>C5Y,8=W4CFGROR?^"87/
M[&8,!DBF,B[LSUHNA)JX)XP)B24^H#YD=2P_8>WLT2;>MY=!CZ43<;*\1]%U
MTNWU%J1 #_&IK?(/E"%0C+BUYY,D.";2U-;2\:9C\YTGX>GX.55@)\JR+A)*
ML6T(#+@"2.F'(!_V"T7<>6"H<H72IT69RLBHW>A"/" TLL(/SX\;Z+;6,6Z,
M4B .XX*7%(HM1^DH1[/GE,$5S.>92V7!T^=PFXI86]B3T3#03EF3F(8>Q#'N
MTW5@4(3,%F$([0)QAS]6/ IM%ZJ5I%6A?!3I# 80Q;VN7TCHJ>1/9A,R@_O-
MLE1H66;"1@,0B$;7:]T*N^1S4(3'3MUW+()4NAF :G67/-E[CK=%K5%6;B4<
MN,-CI"O5%;\\&P^WI;8GV1$97K[->GN+66DAHMS>HM\<0).F@ANS8W/H@JPF
MK0.+HO)Q@#W=-HK\0V4PO'EKY>0^7PIQ*UL][.(W%U"-O(<4&"2XAX@&%A;I
M'JDN'K9@UR  ?U.HQLD-M>X1ZXY@ 1#)_[Q/[TLN\\8^T!N1*LT)^+X%_B]%
M>I/>%Z5YAY%0U\+8&^* @"K7^7J%8P*-8K\<0J7&VB ZM^%/5PMWX<(R)Q;R
M@!,A2H@70;ML8TD'ZI">3?K#KO*QK X4O@I:M.;"Z0B[X!FI!-#2FH(\CG !
MCW]Y1M8FSYW0M6S%V<2!8S,Z>N5(:O!=:)9HPS>)"S).\:-92-1N#,)R7'<L
M'<^Z%'X<+7&X-1:A0#/1"I)#GK$7 3!!+%W4N+A#^1.+&!742FP_U^!?NV8Z
M;)OIYM9Q++9W96LST8@$:E,66ND7FWME,/[8:C&^I5&<]%11%ZU60TIQ$5AT
M9+5L05L^(>Q;NX5Z>Z=0#'3(+@QU+2S!:7SQ-T[(+<B3W43R.P0/C0[2:^KH
M/O*A$',*2NZF)KT%(TRUX?S>Q7#4AG"4'.$';8I<CCKL0D>45N'I_ ND(-$T
MP/DVL)/I-.$ZA_:%NM"@-!US+PX<RB5J$))9T VN.%F-"(XFK\FL2W#-544K
M:Y #!S%Y;IKKPVARD!T>3 Y;=<WO4:'+%3(>P6,)?(A V0\SQ-L4M5Z)T%:X
M406HPZ;VEZFN,[![4X?(7 M[2U=7EP%D1G,M8R=[JPT:#V;A\U7_ND\'\-];
M=!3.@>42*H6!$+:?(#!''^MD9RK-[V5:\]V'+G.A<).)Z7N9*[G<&/P5D"E8
M)KSI:UR3^/?"LD[XH'?CA<4!EY6-?70L@[0?@'X2*[S@>QFR"IRO?/8UNF]1
MB.@=CH^KA \QLEC$*K.+_(41-G2PU^@3*53G#OOTJ6I*2/HHL+A>6<[;2H:[
MWC<(*]G:!?;FJ<>P*H&%T\?Q-#F>C>))9/8BF<RFC8%DPV8X/>UVI=4IV^WO
MNG<,-JYQA;2K<%GE=4C]>*/KOG;WX?-X#7R<'B_3N$*AW#L4I"66#OM'LUYL
MB^V+-U6X%"Z,QQ4S/.:XTTO+$S"^-&A<S0L;Z/Z7X.P?4$L#!!0    ( .9$
MK5*S*;@Z1!0  +(_   9    >&PO=V]R:W-H965T<R]S:&5E=#(Q+GAM;-U;
M67/;N);^*RA?]ZVD2I:U>,M:9:?3,SW32RI.;C],S0-$0A)BBF  T(K[U]^S
M "!H4XJ3OE,S-2^)+!$'9_W. O#EUM@;MU;*BR^;JG:O#M;>-\^/CUVQ5AOI
MQJ91-?RR-'8C/?QI5\>NL4J6M&A3'<\FD[/CC=3UP>N7]-T[^_JE:7VE:_7.
M"M=N-M+>7:G*;%\=3 _B%^_U:NWQB^/7+QNY4M?*?VS>6?CK.%$I]4;53IM:
M6+5\=7 Y?7XUG>$">N(?6FU=]EF@* MC;O"/G\M7!Q/D2%6J\$A"PG^WZHVJ
M*J0$?'P.1 _2GK@P_QRI_T3"@S +Z=0;4_VA2[]^=7!Q($JUE&WEWYOMOZL@
MT"G2*TSEZ%^Q#<].#D31.F\V83%PL-$U_R^_!$4\9L$L+"!%'/-&Q.6/TLO7
M+ZW9"HM/ S7\0*+2:F!.UVB5:V_A5PWK_.LKZ;039BG>6>54[27KJB[%-=L)
M?[O6JUHO=2%K+RZ+PK2UU_5*O#.5+K1RXDG\]/3EL0>FD/1Q$1BX8@9F.QB8
MBU]-[==.O*U+5?;7'X,P2:)9E.AJMI?@K]*.Q7PZ$K/);+J'WCQI:$[TYCOH
M#0G\7Y<+YRUXU'_OV> D;7!"&YQ\S01-9H(A17X'&?%AK83+S"<[:9HH#:PQ
MK15OS*:1]=U(;->Z6 MI58A5_:<JQ0(#>$3?%@:"TGG8 YS5KWLTK:X+W51
M=:5J9655W>'OJO% 0]?" S\?:XU_70.+Z#Q__]O%;#9Y\7%\/1;_=GGYCOZ>
MOGA*7@@QB@$,A#%^"WA>-HTUL \L%MX0P47K0!G.X0;,_%8) "X+SXQANXI_
M*T$%N+&!-7:KG1K1:ETSN*&Z H>_&>0L4'\#XH*J2EK[DZXE2"@K9A_PR3M@
MLI)A 2J2=P9R;BS^4&(M;Q4:I0'=E401%4:Z1I4M$T7800K@A9[Q:ZN4V'!L
M*(P- 9X-HD77)O7 AXEH6NM:-&Y@V+:H?];>JJV8%;3R0^5?JZ*UVNOP_-LO
MQ5K6*Y1YL]$.H7<LWBCK =Y[>L*'E\;X&A0E2NV*RK@6_$[4^ @:'?R@:DLV
M>B>BZY26-*)K4H@MX1G%'I5\@96W4*I&KRLA&Z#]0,4;[5&,7'37@G8&91]3
M&.S3.B[(Y7-KTU;H] )3';((VW]J:TXEQ"-:^K*N6R#Q7C7&>@&_8*80T\G1
M?R8[WBEI@_U^5(7:+)2-)IPDWZ<_>L1B$##K;Y+L/6>\DA7I[)KRMR0;/]QD
M#3^0!DME(0."X:S9L!^V)3E#D1,=-)8$#:_A'WP$P@T^&#*VCW868/3H8KL<
M!0/E<ZO1YHN[S,:H*C1-I8#XT/9C\3/'I6ETC51AHXVLH6K GT</8ZKSE:^+
M!D^0>Z, [+W!?2 R+!*3Y2?(P_QP#=IU#M,B.%P 6K&4VH+',X9^W5 N6&H@
MG!\8;[2+8H8^0.KWA#C?@1^/W /3@U5K+,@@)'\Q[G]R+T(APO-K;XJ;M:G
M>1T&Q?3\A7@+7N3OOFM[_/0X%J1;BY\@YWV/F.,]9<%I*@M.]^;SCTXA'\IY
MO4&L'JH(OHT"00G#+@<G_#@8$GL1.<2PRR(0@V$C;U2V%6I".J@?&G9+0@^Y
M7&(NIW#=8,F B(!HQUD  V@8?9!8'M^$)F/0?N( *W-@'![N>  )UU"G& MY
MOQ+J"P2)5B@1TKN%NL:TCHN!'JM0Z6B%. E2<0)PII:+"DJ)R\I#8EBM4037
M$Q?*(F2AQ$T[Q02'19K.BYO:;"M5KL@JB"[(..S4B9CI:B,AAX+ H*_6Q;ID
MV7K(LB-\$E,%6 &:#T?/WB(H)61/G(W%V\1D@.H1 3ARC/A=Z0WE &]&<27(
MJMV:U J,(LC96\5A$$H]M%NA]"UJ922<K C;@;?:C6 ;%,E@Z[" Z%*N2$K?
M2FLA6]^)HI)ZXU[0CJU3R[8"1FY5J%^Q@(*'< 4Z6X.LO  )JS8DE0KBDGP3
M>:HA]T$?IBR55_*+"G0+ SI'&F:Y=,I3?0HJ,!L5"K:2JX;%4:7(=''C%[3*
M(? <L5'1]0 Q:'=*1K*$S E_C/:X/'PVA:9]*(20IQ)2G(4V+L4?617R!TFG
M^A&I:V@RVBX$5*<!>*XR]>JHHH0..V%:066@RVA+MDN!2O4ZX"=:2WQJRQ7^
M#,[<=Z*"*IY20XS:Z$C&W8]I*K+X(;1J7 9Q@L] 55[MP[ZSA'UG>Y$KEIQ6
MNQO>%V0 -_(ARPUAX5^CF KU(CS(O3<D'>@H4 WH9>SHV$C<ZK*E,A?PBZL
M,,-T\@/6IAMC5>RIO/&@XK1VA+]W]&#S4@W%%& )%PS?M]=.NB^P,>J)Z=JF
M ;BS+K9]PSONW@\J<.@97$^V>_LW\NXO"K6?X @+JJ5!4'#/L01_7+:.P!6Z
M-F@I:=X!W8RW&B 2Z,3,3]GO-WG+F"2QMP"G <8 &,!'*%HKG/\@Q@ 06K/4
M7H2$%?G& A0A%/O7+Q12(/XIB(PTI],?4.3,4T KC:*9574'?2047M_%+_7K
MFP6$0X"A1,2M=;-H-556#U>.[OMN@.:R+?S XR0L!!>B45_ \[Y@::F3 ,28
MDDTY?K31)O\GC#:_"$8[_7]JM).SQQCM]_\U YR<!@-T?.[$O+Y11MC*]G$
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
M01!A9FAX$#U3]=%%#+]>02-=JD'^H":)B%]!;WMS=%VL\8I^5@I K0=LANI
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
M.L>9<+4+/T[G_CHUU8XN9_YS0;=A-$Q ^S--':O\8075_?KL'U!+ P04
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
MT_-Q!*9OUOW"Z4UHD$OMJ-V&:4W_-S3>@,Y76KO]P@<8_ICS/U!+ P04
M" #F1*U2=XNM"$\#  !1!P  &0   'AL+W=O<FMS:&5E=',O<VAE970R-2YX
M;6R%55EOTT 0_BLCBX=&"O79)D1)I+90@0121#D>$ \;>QPO[&%VUTW[[YE=
M.R9%I$BV]YKYOKEVO-QK\],VB X>I%!V%37.M8LXMF6#DMESW:*BDUH;R1PM
MS2ZVK4%6!24IXBQ)+F/)N(K6R["W,>NE[IS@"C<&;"<E,X_7*/1^%:718>,C
MWS7.;\3K9<MV>(?N<[LQM(I'E(I+5)9K!0;K5725+JX++Q\$OG#<VZ,Y>$^V
M6O_TBW?5*DJ\02BP=!Z!T7"/-RB$!R(S?@V8T4CI%8_G!_3;X#OYLF46;[3X
MRBO7K*)Y!!76K!/NH]Z_Q<&?"X]7:F'#%_:];$&,96>=EH,RK257_<@>AC@<
M*<R3$PK9H) %NWNB8.5KYMAZ:?0>C)<F-#\)K@9M,HXKGY0[9^B4DYY;;PSE
MU[A'8*J"-[\ZWE+$'9Q]8EN!=K*,'9%XT;@< *][P.P$8 X?M'*-A3>JPNJI
M?DS&C19F!PNOLV<!/S!S#GDZA2S)TF?P\M'C/.#E__%X"AO!R-6GCG^[VEIG
MJ%:^/T-5C%1%H"I.4-W1%:HZ@:!K:(\#C0>^?\7W64Q_21>V926N(KJ%%LT]
M1D^S.((#,PC6,8<5, >EMKVW%9)FR<-^9[G:@6N\H&&^A%]Z1I#H&EV!OD<3
M3M$Z+@<-K#L!@BZ3]8[Y4X.B9[$6G0TDI::+2X2#1*T%W7_/=<85[>C.DI2=
M+(#R6S8AP:^Q1+DE0K\XJL61L4;(P6E(+^ 1F;$3> 'I-)NGX_A):Q%(CG4R
MKS.J9$42WB_8\))J_*GL*#9/H)C!;6<4=QW%T?M4\P<_/Z62YK/PWFC9=H[\
ML+IV>Y^$OUPXR$_3+*5O<C&#]TBMI=&B BZI5.[1NTY$(3.--AZ.0GF,HPT(
MKQ56A';Y*KRW7#%5XG!F0DIU_9(T^_20B?ZADOE!G=$"I8,(=^26I<!FD%)L
M3M734$3Y-'V5TS>9%V2XM0MJKF4GN[X(QO+R7?<LF\[2=.+'R\MB<@)Y"HH,
M>P'%///?+(%_W;[XJ,U)-+O0S"V9U"G7=[QQ=_Q?7/5M\H]X_[.AHMMQ92E(
M-:DFY[.+J _58>%T&YKF5CMJP6':T#\/C1>@\UIK=UAX@O$ONOX-4$L#!!0
M   ( .9$K5+A;1!=5@4   03   9    >&PO=V]R:W-H965T<R]S:&5E=#(V
M+GAM;.U876_;-A3]*Q>>,=B 4UN2+2MI$B!)%ZQ B@5)MCT,>Z EVB8JB2I)
MU<U^_>XE95FV%27%WH8"B251]YOG7)(ZWTCU6:\Y-_ M2W-]T5L;4YR-QSI>
M\XSI=[+@.;Y92I4Q@X]J-=:%XBRQ2EDZ]B>3<)PQD?<NS^W8O;H\EZ5)1<[O
M%>@RRYAZON:IW%STO-YVX$&LUH8&QI?G!5OQ1VY^+^X5/HUK*XG(>*Z%S$'Q
MY47ORCN[CDC>"OPA^$8W[H$R64CYF1X^)A>]"07$4QX;LL#P\I7?\#0E0QC&
ME\IFKW9)BLW[K?5;FSOFLF":W\CT3Y&8]44OZD'"EZQ,S8/<_,JK?&9D+Y:I
MMK^P<;+AM =QJ8W,*F6,(!.YN[)O51T:"M'D!06_4O!MW,Z1C?(#,^SR7,D-
M*))&:W1C4[7:&)S(:5(>C<*W O7,Y1W'E#0,GM@BY7IX/C9HE%Z-X\K M3/@
MOV @@$\R-VL-O^0)3_;UQQA,'9&_C>C:[S3XB:EW$'@C\">^UV$OJ#,,K+V@
M.\._KA;:* 3!WQTVI[7-J;4Y?<'FC<P*F?/<:)!+L![@1FH#+$_@L2R*E"-P
M#4OAANDUW"+TX6/N*(18;*MRIT.BYIDN6,PO>L@]S=57WCN(PJPY(%<5>LA7
M(R0,IEO&IE0\L6$M1<[RF$-JHXTQ6HU"L5SEXA\4$3GDV -2J35@H-:<62O.
M(7/SRVE^ 6<G7M?38PWCS60$&ZXX,-)-,5M$%!HT:UEJ%-'#,WAZU1;9@=^V
M&33B)%NQS/@02[LX<>-N!/HP\&?#[>5NI^)- _!F?JN]D<W4\R+P_#D\- OU
M)J>#,!JZGX;#60BAUV;,*3F? \]'S?D0GB2!XS"D/GB3D'ZQ$!THG=4HG76B
M]!$[>%*FG-"Q!\IKEEHH/-JV_PHP.WVT W//V:)RYM88L7.&Z$N9P3H9:=%&
M<&;Y\\\_1;XW?Z]W8#Z&KR:D858M:/S 8YXMN-J.3H!U _/ QK'^#D)5*SG$
ME*+.?R*7)Z4F3YHCL_H0SFDJYZ?3-E"TJ<RF./WSMU@?8<FHM/-@ J<3[T@E
M%6PA4F$$!CN//#CUPK8@FF+1#+PPZK*T=1J%(7BC232%VVI*JK+<*YHQ\VRG
M@7\I14$( "^@ORLJ/DF[[I)P1$LL' X&W@19<3JL#3K?VUR)&0%,#]XV@Z>W
MCE'+%V7Z*-5'N0Y>A36OPC?SZK:DBB*(\.(<T6"S,'"WBZ*-7YV^VOE5.<7M
M@,C*K$JV8,^970L4U9YFN<0NJ]Z^)KB9X0S94"TGGG]B&S8HY Z! DT)F6A8
MT&:.E@R^7.+V"I@YHF(WZ8XXM0?/CK%=,[[?YKM?[:M"B=3%@'W%185//C$2
MQ_J(7UHNJ'L3)&IQ?T\<,3N?@6U%_ONC:ZT4["DA?\/7=:9[.C.,X565V9Y*
MV*%2L<#A ^=?Z%B6N:DI7X,DPM4/*V'K$&#I<-4765$:NQ,PG) "@P!7JH$W
M?,&+LR@7J5A9'A/'J-OTJ9DT2MS!N'G-N/E_8]P!GE[C7*>W'YS[P;G_,>>B
MFG-1-^=>/<8@6.H-G(-*&]<ZO;QA_QB3ZZ7#?NO>L4&D[SZT,/V=9Y;=2>4-
M0=JJ%4PD=A,SLB&RC,"AZ5B0EHD[>%'8&6:! +);)FP%1QN8)G]K;QBZDEEC
MIUS5 H\0@3U(!+,.-76T);2:<_?C*-ZF=]#!4-K^MV%NW/@RD7&ULM]?-%B"
MN(\4]6C]B>?*?=G8B;OO0SB)*X& 3_D252?OYG@P4>Z;BWLPLK#?.1;2&)G9
MVS5GV(Y) -\OI33;!W)0?_BZ_!=02P,$%     @ YD2M4NLV03J;!0  (@\
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
M8!Q BAFKA+U3N[?8Y#-T?(D2QO_"KO'M!9!4QJJB 5,$!9?UESTU.OP+(&X
M\1& -NX&]!M _Q@P> $P:  #KTR=BM=AQ2R;3[7:@7;>Q.8&7DR/IO2Y=,>^
ML9I6.>'L?,$,-Z R6&LT*"VK3T.FL*DO@EO;\*WD&4^8M'";)*J2ELLMK)7@
M"4<#5W"'B9()%[S&$\81)YYHQ45E,84/RA@H4<,F9QKA?(66<6$N"/YELX+S
MLPLP;L4 E_ Y5Y4AM+F$LV?S:6@I;1=\F#0I+NL4XQ=2[,-')6UNX+5,,7V.
M#TFN5K-XK]DR/DGXD>EKZ$>7$/?BJ".>U;_#>R?"Z;='V/=\_1?X/E4%:F:5
MGIP@&[1D T\V>(F,*HV@@^J2N4:./-*5D\?Y530:Q-/P\3#Y#J_A(&J=GD4U
M;*,:GDQQA5+1Y?];DJ.6;G0RR?IN[GQ-H(O)'DF_+4*BBH(N;W,)J48:2S?.
MW?1SOC=?= BS.+W;]^A'EYHU:'B@4W\4'8O9X=0;C[K%O F.#.-6CO%_!+@X
M#7I5/^/G.E$;@E)S]XOT20WD)"[<([H>06Y.;N=D<X3HBD970UH@_0T"U;KD
M 4PIN 7,,O0= =Y7DER;UW+==?CA0?6CE[#U7<2 +U/UQ6^M;:-:^/I\9%]2
M XLZ[+<WD^5-AWTQGBQ]PPO_;%MW2WKB6RX-",PHA-[U#9V@KCM0/;&J]#7Y
M7EFJ\'Z84]-&[1QH/5/*[B=N@_9OP/PW4$L#!!0    ( .9$K5)FFUJ.&@,
M )@*   9    >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;,56VVX:,1#]E=$^
M)5*;O7%+!$B!4#52TZ*@- ]5'\PR"U:\]L;V0O+WM;W+0@*L^I2\@&]S9LZ<
M67OZ&R&?U I1PTO&N!IX*ZWS*]]7R0HSHBY$CMSLI$)F1)NI7/HJET@6SBAC
M?A0$'3\CE'O#OEN;RF%?%)I1CE,)JL@R(E]'R,1FX(7>=N&>+E?:+OC#?DZ6
M.$/]D$^EF?DURH)FR!45'"2F ^\ZO!J'+6O@3ORFN%%[8[!4YD(\V<GM8N %
M-B)DF&@+0<S?&L?(F$4R<3Q7H%[MTQKNC[?HWQQY0V9.%(X%>Z0+O1IX/0\6
MF)*"Z7NQ^8X5H;;%2P13[A<VU=G @Z106F25L8D@H[S\)R]5(O8,#,YQ@Z@R
MB-X;M$X8Q)5![(B6D3E:-T2385^*#4A[VJ#9@<N-LS9L*+<RSK0TN]38Z>&(
M**I I#"5J)!K4B:7+V!6"FOW9G3):4H3PC5<)XDHN*9\"5/!:$)1P5?X:0KN
MAU *<I0P6Q&)<':#FE"FSLVVLBNJ[VL3L?7K)U5THS*ZZ$1T,=P)KE<*)GR!
MB[?VOF%:TXVV=$=1(^ =D1<0AU\@"J+P2#SC_S</&L*)Z^S'#J]U F_R7%#]
M"K]RF_4&O%:-UW)X\0F\VRPG5)JO3,,D3<V78J3E,"&2&[T43&MQ_OPPEG"K
M,5-_&_RV:[_M1AXS3 I)M:T%?$E88<2"5(H,N*D+MJT+5P60$)84K*RS,\JK
MVC@_5ARET[9S:N^C];![&00F\>M]R0Y/Q7MGWO#IU'PZC7SN46E)$VUHS+1(
MGN"!4ZT:$M6M@;L?*E"O]MO[#(%Z!ZF/#O4Y/!0&IP2ZK/E<-O)Y)%*:VZ@A
M,V&PNP&##]4DW+M[P\]0I?+Z-N.=DSD/HUV\46.\8\'7*#6=,P15Q]Z4BMU%
M&,8?*\+NR@Q;GR)"ZT"$=GCD]CIRKM6.#L7R]][X#.72M3X*W&-<OG_U:MU>
M7;NFXMWZR+9=KG?8P90]FWG=EI0K8)@:R."B:X*291M43K3(72<Q%]KT)6ZX
M,JTC2GO [*="Z.W$.JB;T>$_4$L#!!0    ( .9$K5+Z&R1KD ,  !X/   9
M    >&PO=V]R:W-H965T<R]S:&5E=#,S+GAM;+5776_B.A#]*U:>=J5N$QM*
MVQ4@%>A^2%07E>[NP]5],,D 5A,[:SM+*^V/O^,D36A%37<%+Q [/L<SQY.3
M3'^C]+U9 UCRD*72#(*UM?G',#3Q&C)N3E4.$N\LE<ZXQ:%>A2;7P),2E*4A
MBZ)>F'$A@V&_G)OI85\5-A429IJ8(LNX?AQ!JC:#@ 9/$[=BM;9N(ASV<[Z"
M.=AO^4SC*&Q8$I&!-$))HF$Y"*[HQPGK.$"YXKN C=FZ)BZ5A5+W;O U&021
MBPA2B*VCX/CW"\:0IHX)X_A9DP;-G@ZX??W$_JE,'I-9< -CE?X0B5T/@HN
M)+#D16IOU>8+U F=.;Y8I:;\)9MZ;120N#!69348(\B$K/[Y0RW$%@!Y=@-8
M#6 O ;U7 )T:T'DKH%L#NJ4R52JE#A-N^;"OU89HMQK9W$4I9HG&](5TYSZW
M&N\*Q-GAB!MAB%J2F08#TO+J-&1"YE4EN'MSL9)B*6(N+;F*8U5(*^2*S%0J
M8@&&?$"T2HK8DA]<:USE)M]-P'*1FO?]T&*@;KLPKH,:54&Q5X+JD!LE[=J0
M:YE L@,_]N/IQ3Z"B9^@%WD(0I2XT9D]Z3QB7L8;KD])AYX0%M'>KHS>#&=T
M5SY_#7^63:>IFD[)UWV%;ZRR#'0L>$JFUY-/4W)7+(J4:S<B4Y[E>/S7#W%:
M)*Y.1MQ:P$H:\?B^R,D=+GI_0NZT6BX!(066-1=8?B?D"NMN#!KK1I+/J5H
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
M*#MG?<J'#O,Z;*Q:^I$W5Y8&J%^6],2A=@9T7RAE-QOGH'TT1_\ 4$L#!!0
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
M8!_A/C/L#4%9 US?2&D. ^N@[C:G?P%02P,$%     @ YD2M4GHH,T^; @
M 0<  !D   !X;"]W;W)K<VAE971S+W-H965T-#$N>&ULC55-3^,P$/TK5L0!
M)$J:3UK41@(BM!P6(5AV#ZL]N.FTL7#LKNVV\.]W[(0H;4.72^*/>3/OC<?C
MR5:J5UT"&/)6<:&G7FG,ZLKW=5%"1?6%7(' G854%34X54M?KQ30N0-5W ^'
MP]2O*!->-G%KCRJ;R+7A3,"C(GI=552]WP"7VZD7>!\+3VQ9&KO@9Y,57<(S
MF)?5H\*9WWJ9LPJ$9E(0!8NI=QU<Y:FU=P8_&6QU9TRLDIF4KW9R/Y]Z0TL(
M.!3&>J#XV\ M<&X=(8V_C4^O#6F!W?&']SNG';7,J(9;R7^QN2FGWL@C<UC0
M-3=/<OL-&CV)]5=(KMV7;&O;-/5(L=9&5@T8&51,U'_ZUN2A PCB3P!A PB_
M"H@:0/150-P 8I>96HK+0TX-S29*;HFRUNC-#EPR'1KE,V&/_=DHW&6(,]F]
MV( P4C'09$ ZLW/R@$5WFH.AC.LSW'QYSLGIR1DY(4R0'Z5<:RKF>N(;I&&=
M^443\J8.&7X2\CM5%R0*SDDX#(,>^.UQ> Y%"Q_VP/,OPX/Q+MS'W+4)#-L$
MALY?])\$OI.<Z8)+O59 ?E_/M%%8TW^.1(C:")&+$'\2X8EN\<0-*$9Y;[IK
M>.K@]IIOLCBZC";^IIO40Z,P'2>MT0ZSN&46'V5VQP3#TIN3I93]E5#CDT[4
M- B3/6J'1LDH'O932UIJR?&D@0:UP:+&SDC@K0"-%2UG6G(P<$ZP<HG&EC>H
MY(:))59T6_A],I(#AH-P/-I/<9_5:!SO6N7)P4$,HB08]<M-6[GI4;D[%U>
MZ1.1'@2^3(+]LS@T2M(XV"/G=_J-?1SP1B^9T(3# F'#BTO4J.J&6T^,7+D6
M-),&&YH;EOA&@;(&N+^0TGQ,;%=K7[WL'U!+ P04    " #F1*U2\1TR:KX"
M  !'!P  &0   'AL+W=O<FMS:&5E=',O<VAE970T,BYX;6R%54U/XS 0_2NC
MB -(A31)OT!I)=HN6@Y(J"R[A]4>W&3:6#AVUW9:^/=K.VG(EA NB3_FO7DS
M8X_C@Y O*D/4\)HSKJ9>IO7NQO=5DF%.U)78(3<[&R%SHLU4;GVUDTA2!\J9
M'_;[(S\GE'NSV*T]REDL"LTHQT<)JLAS(M_FR,1AZ@7><6%%MYFV"_XLWI$M
M/J%^WCU*,_-KEI3FR!45'"1NIMYM<+,86WMG\)/B037&8"-9"_%B)_?IU.M;
M0<@PT9:!F-\>%\B8)3(R_E:<7NW2 IOC(_N=B]W$LB8*%X+]HJG.IM[$@Q0W
MI&!Z)0[?L8IG:/D2P93[PJ&T'5U[D!1*B[P"&P4YY>6?O%9Y:  ,3SL@K #A
M*6#T"2"J )$+M%3FPEH236:Q% >0UMJPV8'+C4.;:"BW57S2TNQ2@].S>[Y'
MKH6DJ. 25JA0[A%6@MD3<B RA?,E:D*9NC#[ST]+.#^[@#.@''YDHE"$IRKV
MM5%B^?RD\CHOO8:?>(W@07"=*?C&4TQ;\(MN?!!V$/@F!74>PF,>YF$GXP.1
M5Q %/0C[8= FJ!N^Q*2&]SOD1'59(L<7?5&6MUY=D]^V*'!75N5/AX]![6/@
M? P^\3''+>6<\JVY!XSP!-OJ6%*,'(7M"/O993BY'L3^OIF<%JMH&$QJJ__T
M#6M]PTY]MTDB"\+:5)7 8=-?T ].1'TT"B=!NZ11+6G4*6F%:5&VG[1 T *4
M8*FY"U6QVJ2./J@(PA.A'TVB0=0N=%P+'7\AU!T:!>86 [XFJ%0/Q-K(18T]
M,+<6E&G@E[G8VP- W[M 6PSCED-P/8E.PFBS:AZ5,A"_T:MRE%O7PA4DHN"Z
M;%OU:OU*W+KFZ+^;ET^,N;/F!"M@N#'0_M78I%"6;;N<:+%SG6\MM.FC;IB9
MEPZE-3#[&R'T<6(=U&_G[!]02P,$%     @ YD2M4I&@$R_S!   61H  !D
M  !X;"]W;W)K<VAE971S+W-H965T-#,N>&ULO9E=3^,X%(;_BE7-!4A XH]^
MH5)I: ?M2""A89B]6.V%2=PV.TG<L1T*TOSX=3Z(DS1U"NKT!I+TG./7K]VG
MMC/9</%3KAA3X"4*8WG56RFUOG0<Z:U81.4%7[-8?[+@(J)*WXJE(]>"43]+
MBD('N>[ B6@0]Z:3[-F]F$YXHL(@9O<"R"2*J'B]9B'?7/5@[^W!MV"Y4ND#
M9SI9TR5[8.IQ?2_TG5-6\8.(Q3+@,1!L<=7[#"_G9) F9!$_ K:1E6N0=N6)
M\Y_IS5?_JN>FBEC(/)66H/K?,YNQ,$PK:1V_BJ*]LLTTL7K]5OTFZ[SNS!.5
M;,;#OP-?K:YZHQ[PV8(FH?K&-W^QHD/]M)['0YG]!9LBUNT!+Y&*1T6R5A %
M<?Z?OA1&5!)TG?8$5"2@9@+9D8"+!+QO BD22.9,WI7,ASE5=#H1? -$&JVK
MI1>9F5FV[GX0I^/^H(3^--!Y:GHO]!02ZA70V =??B7!6@^J N?@0<\P/PD9
MX NP(^ADSA0-0GFJPQ\?YN#DTRGX!((8?%_Q1.I8.7&4UIBVY'B%GNM<#]JA
M!X,['JN5!%]BG_GU?$?WK>P@>NO@-;(6O*/B F!X!I"+8(N>V?[I;DOZW)X^
M9]ZN]%IO<#E<.*N'.X;K#-R'5 ]!?4#^N=7AX*MBD?S7TA@I&R-98V2?N<'*
M5J@"'I>J;6SS>H.L7DJ<YRF&8SQQGJN.M02Y(U(&U:3V2ZE]J]1;)N6EAHB7
M1$E(%?/U=U]ST MH2I<VJ7F]?D7%.1I"V-#:%C48[! [*,4./N#K&8A9JZF#
M+0UDA!HZ6V+2^=:F<EBJ'%I5SCL,'&XW.:RKF@VW1IH,VD6-2E$CJZARKENF
M][BL-?[SWR7H&M"Z!_XV%06K_D$T:D[1(JJ_*ZHNM_*[ /=S&OP&=T$<1$ED
MLP&9NN@(KAM>0FSMQJ-DBR0$8;!@X$3_-+TR*N1IJ]OV0CA/M8DR7(5VL-:\
MI2]=WAH(POX1O#48@W:.O<-;>R'8[S;78 O:N?6=<_UH::ME: -'1S#4  F.
M#XV(\18B$'&;A!AO$:(:5%]6&9XA.\\*G_?" S+80?#/.XX,C1 ZT!3N*(0Z
M9S RS$)VU%2<[80#,M!!Y C.&A8A^XKL'<[:"W6S 1EB(3MH?K!5X(7,6LR
M!@V/8*AA$;(O?=YAJ+W0'H8:8J%#$PMM$VO4!!;:!E9E;5G?.!E>83NO;A(1
M!RH1+-.Z"%[2:YL+V$ +'P%:V$ +'PI:'86Z9P*N;$SMT'K_3"@*UI:WN+&%
MF!=!_1U!=;&&A=B^ )OQ:)TH)H#D"[6A@MDL,,C#1UA^80,S?*CE5T>A[J4M
M-E#$]M77!Z;!]BX10M3<Y>#M[29T^[LF@H$JMK/PEE')5CST01"M!7]FJ5JK
M$P:-^ C;2V+P1@Z]O20M&\?!N'E88P^JBS7 )/;-Y4T0T]AC($SM!R(]FSWG
MB_-$WU IF\<@]48,)LD1=IK$ ) <&H"DC6U-_ZTQ=:F5<[W.@[W_F*=D>E:K
M9_U2_P[:YCPQ!"1'(" Q!"0?.4BS6C[8ADV_>9C6%K2U7W(J9^X1$\OLW874
M#2>QRD^GRZ?E^Y'/V5N!QO-K>#G+WW*8,OE+ESLJED$L];=DH4NZ%T-MOLC?
M8^0WBJ^SD_TGKA2/LLL5HSX3:8#^?,&Y>KM)&RC?)DW_!U!+ P04    " #F
M1*U20*XW"]8"  #0"   &0   'AL+W=O<FMS:&5E=',O<VAE970T-"YX;6RE
M5FU/VS 0_BNG:)- 8DV3]!6UE8 .;=/8$(SMP[0/;G)M+!*[L]T6_OW.3IIU
M4VM ?&GB\SW//7>N[S+:2'6O<T0##V4A]#C(C5F>AJ%.<RR9;LDE"MJ92U4R
M0TNU"/52(<L<J"S"N-WNA27C(IB,G.U:349R90HN\%J!7I4E4X_G6,C-.(B"
MK>&&+W)C#>%DM&0+O$5SM[Q6M H;EHR7*#27 A3.Q\%9=#H=6G_G\)WC1N^\
M@\UD)N6]77S,QD';"L("4V,9&#W6>(%%88E(QN^:,VA"6N#N^Y;]TN5.N<R8
MQ@M9_."9R<?!(( ,YVQ5F!NY^8!U/EW+E\I"NU_85+Y=<DY7VLBR!I."DHOJ
MR1[J.NP XN0 (*X!\7^ J', D-2 Y+F 3@WHN,I4J;@Z3)EADY&2&U#6F]CL
MBRNF0U/Z7-ACOS6*=CGAS.0S4M$TO(,O3"EFSP".IF@8+_0Q6>]NIW#TYAC>
M !?P+9<KS42F1Z&AT)8@3.LPYU68^$"8!*ZD,+F&]R+#[%]\2)(;W?%6]WGL
M);QBJ@5)= )Q.X[VZ+GPPS\QT8+X,'SZ_.AM3S9)<PJ)XTO\I_#S;*:-HJOP
MR\/9:3@[CK-S@//K$NV!B@44EOT$9E(1A360'??5S$\8=5O#Y*U'6;=1UGV9
MLHSK5*Z$.23LW,_7;\5=GZY>HZOW,ET;US4P [:FG052G[.=M/$ @ZK<I]<?
M)X)'9 KZ4%9WH@<9>]2>!/I- GTO\0W2WV>5FI4BS:_-P1\JV8J/!D^I'S3J
M!U[*2RZ82/'5POU1ZN)'E?ZG:S]LU ^?KCU/K>"4Z1QR+#+;-*7)40'3&LW>
MOEFQ]ARKG='K2=*)1^%ZMQGY?2JYX<X,*%$MW"S5X.Y5-0X::S.NS]R4"O^Z
M5[.>NMN""TUEGA.TW>K3]5/5_*P61B[=1)E)0_/)O>;TR8'*.M#^7$JS7=@
MS4?,Y ]02P,$%     @ YD2M4A(/<W?4 @  N @  !D   !X;"]W;W)K<VAE
M971S+W-H965T-#4N>&ULI9;?;]HP$,?_%2OJ0RN5YA<$J )2H9LVJ=6JTFX/
MTQY,<A"KB9W93NG^^]E.2$,(4:6^@.W<?>]S9\>7<,?XBT@ )'K+4BIF5B)E
M?FW;(DH@P^**Y4#5DPWC&99JRK>VR#G@V#AEJ>TY3F!GF%!K'IJU!SX/62%3
M0N&!(U%D&>;_%I"RW<QRK?W"(]DF4B_8\S#'6UB!?,X?N)K9M4I,,J"",(HX
M;&;6C7N]=!WM8"Q^$MB)QACI5-:,O>C)]WAF.9H(4HBDEL#J[Q66D*9:27'\
MK42M.J9V;([WZE]-\BJ9-1:P9.DO$LMD9DTL%,,&%ZE\9+MO4"4TTGH12X7Y
M1;O2-IA:*"J$9%GEK @R0LM__%85HN&@=+H=O,K!:SL,3SCXE8-O$BW)3%JW
M6.)YR-D.<6VMU/3 U,9XJVP(U=NXDEP])<I/SN] U4"@ 5JR+&<4J!2(;9!9
M5FM"HO-;D)BDXD(9/:]NT?G9!3I#A**GA!4"TUB$ME0D6L^.JJB+,JIW(JJ/
M[AF5B4!?: SQH;^M,JC3\/9I++Q>P7O,KY#O7B+/\=P.GN7'W9T>'+^NJF_T
M_/ZJ_KY9"\G52?W3HSFL-8=&<WA"<U6L!ZG9%D(CED%7U4N%P"CH%_AU/O!&
MH?W:K$2_S0':J$8;]:*5IR52IZ4+JO0=-0*Z0[\%U6$S\KJA@AHJZ(7ZD0/'
MDM M2FN\2T2ADS$XCN].6HP=-MZXFW%<,XX_O:?CH["#H(W6;W. -JG1)I_8
MT\E1P%'08CHV"=QNI&F--.U%>@3U-A61+#C$J%FVD]LZ/:Z+Z[4X.VQ.[*KK
MO%^J3B_I$Y,X_<BYJW2:;Z/KM"O99:2OJ0-&N]$#,N!;TQJ%BEY06=ZC]6K=
M?F],TVFM+W1;-KWE7:;LZ>J6W!(J5%X;)>E<C571>-DFRXEDN>DT:R95WS+#
M1'U: -<&ZOF&,;F?Z #UQ\K\/U!+ P04    " #F1*U2.@& ?BL#  #3"@
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
M+J4\]PC^8WQJ7%U,2##9LTT?D)  0)$N(0,+A'A $B @ 8 B8$ 2#T@"!"0
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
MRB[ ]UN)Q:QO['FT^22:_P]02P,$%     @ YD2M4O<?Y-Q, @  904  !D
M  !X;"]W;W)K<VAE971S+W-H965T-3(N>&UL?53=;],P$/]7K&@/FP1+FC4=
M3&FD;051"5"U,7A /+C)M;'FC\R^M(._GK.3186U?4E\Y[O?AY-SOC7VT=4
MR)Z5U&X:U8C-51R[L@;%W;EI0-/.REC%D4*[CEUC@5>A2<DX39))K+C049&'
MW,(6N6E1"@T+RURK%+>_;T":[30:12^).[&NT2?B(F_X&NX!'YJ%I2@>4"JA
M0#MA-+.PFD;7HZN;B:\/!=\%;-W.FGDG2V,>?3"OIE'B!8&$$CT"I]<&;D%*
M#T0RGGK,:*#TC;OK%_2/P3MY67('MT;^$!76T^A=Q"I8\5;BG=E^@MY/YO%*
M(UUXLFU?FT2L;!T:U3>3 B5T]^;/_3GL-*2C PUIWY &W1U14#GCR(O<FBVS
MOIK0_")8#=TD3FC_4>[1TJZ@/BQFL$3VEE&*$,!NA)3 OAH$=CH#Y$*ZL_W;
ME&R7#IY:T,@^;/SSA G-OM6F=5Q7+H^1]'F6N.RUW'1:T@-:KAM[SM++-RQ-
MTM'#_8R=GIS]BQ*3N\%B.EA, ^S%,8MS[="VRLO\^9D*V!Q!N5]'X"\&^(L
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
MH;0!YOU2F$^^G=B.U_U"DW]02P,$%     @ YD2M4D3FIO*<!   [A0  !D
M  !X;"]W;W)K<VAE971S+W-H965T-38N>&ULS5A;;^(X%/XK%IK5ME*'Q(80
M&%&D%GJ9U<RJ&M39A]4^&&)*U"1.;0>FH_WQ<^RDN722D$H[*W@ VSG?\?&Y
M?,=DNN?B46X94^A;&$3RO+=5*OY@67*]92&5?1ZS")YLN BI@JEXL&0L&/4,
M* PL8MLC*Z1^U)M-S=J=F$UYH@(_8G<"R20,J7B^9 '?G_=P[V7AB_^P57K!
MFDUC^L"63-W'=P)F5J[%\T,629]'2+#->>\"?[@E(PTP$E]]MI>E,=)'67'^
MJ"<?O?.>K2UB 5LKK8+"SX[-61!H36#'4Z:TE^^I@>7QB_9K<W@XS(I*-N?!
M7[ZGMN>]<0]Y;$.30'WA^UN6'<C1^M8\D.8;[3-9NX?6B50\S,!@0>A'Z2_]
MECFB!,##!@#) *0K8) !!ET!PPPP[ IP,H#3%3#* *.N #<#N%T!XPPP-M%-
MPV%BN:"*SJ:"[Y'0TJ!-#TQ"&#2$T(]T[BZ5@*<^X-1LJ?CZ<<L#CPGY.[IZ
M2GSUC-ZC.\@@)@3SD!% )PNFJ!_(4WAVOUR@DW>GZ!VRD-Q2P23R(W0?^4J>
MP2*,/_M! (DIIY8"$_5&UCHSYS(UAS28<Q&+/K+Q&2(VP37P>3O\#QKU$1X9
MN%T#7[3#%VS=1P/<"+]JAW^F(H?7&7]]P/A$&]^\^TV7LSN-\-L.QI.)AN-)
M%6Y!3N6)1?+$(D;?H"FQ=&:\U[3BH3D/@6LE-6QU(02-'ACPGT*K9U26NZ//
M9OEB3X6'_OX$*M%'Q4+Y3XM!@]R@@3%HV&!0D=)2I_09HHG:<N%_AY432-HT
ME4_KLB95[!C%NAGL9HYM/E-K5TZ/CG(W'>5N?Y8CK^0JGACFGABV>@+"$4(@
M,C?$5* =#1)FO)!(#\5,I-ZH=4:JVRT99??!)/S*%]W$K@^*54[HY"=T6D_X
ME2M@)?:4T  ICM26H2@)5W NOGGA+!BM2XZ 2;1C0OFK@-413_N&&/=M][>6
M+!WEEH]:%2V9\,&X"ZB9W)S7;-RRC9MOXQY'=8YS@\:_JCK'/U7)8%!7G1WE
M;@[+54XXR4\X.5!U14 7;*5:G(;MHGO;QQ%'7+I0X-9S_@D7[ECP-6.>1!O!
M0U-^:769&Z\IO,(7'OA"%VE<S8#:YI_=97 I-K@_KH\++CH5)ATBD][&J4IY
MT.-!0(5LY\)YIGA<H:^1VV!0T:EP>ZN:5YP5&3(##Z4\U5X-<US3-%Q[8N,F
M-Q5= __"MC''W1K"[6&YJOE%2\#M%/VZ_M"_;^!57/ W'AU)119<C]VW<.M+
M]<$<DJK2 P\P;;9/.;<PQLZP*;4*\L?M['\X-K"R3%826KIVU-4.OMM\4Y R
MGAQ'N$C!Z<3^7\)UF>U3"9=+L$T&]?$B!<>3=HZOB5?&#H<*B93^/QS)'PA2
M\#(YQ,LEY_M2)K!E$L-*7!LR0^ '2HK4T#49X(:[!BG(FAPBZ]8(O:V<2$&R
MQ#F2H!6$3-IOU/]]T"ZS'2M7Q.&0V,ZKJ%FE]S+Z32#\QW[P(XD"M@&@W7=!
M@TA?KJ43Q6/SJF;%E>*A&6X9]9C0 O!\P^$ND$WTVY_\%>?L!U!+ P04
M" #F1*U24;OBREL%  "X%@  &0   'AL+W=O<FMS:&5E=',O<VAE970U-RYX
M;6S-6%MOXC@4_BL6FM6VTI3$SH4PHD@MM+-=[8S0=+OSL-H'-S$0-8D9VX'V
MWZ^=I$D@CJ%2'_H"N9QS_)W;=QQ/=I0]\34A CRG2<8O!VLA-E\LBX=KDF(^
MI!N2R3=+RE(LY"U;67S#"(X*I32QD&W[5HKC;#"=%,\6;#JAN4CBC"P8X'F:
M8O9R31*ZNQS P>N#'_%J+=0#:SK9X!6Y)^)ALV#RSJJM1'%*,A[3##"RO!Q<
MP2^WCJT4"HE_8K+CK6N@7'FD]$G=W$67 ULA(@D)A3*!Y=^6S$B2*$L2QZ_*
MZ*!>4RFVKU^MWQ;.2V<>,2<SFOR,([&^' 0#$)$ESA/Q@^[^()5#GK(7TH07
MOV!7R=H#$.9<T+12E@C2."O_\7,5B)8"='L44*6 3E5P*@7G5 6W4G!/5? J
M!>]4!;]2\(O8E\$J(CW' D\GC.X 4]+2FKHHTE5HRP#'F:JL>\'DVUCJB>F]
MH.'3FB818?QW</,KC\4+N !WG.<X"PF@2S"C:2IKH) $.(O 3\P8S@0'9W,B
M<)SP<ZGQ<#\'9Y_.P2=@ ;[&C' 09^ ABP7_+!_*Z[_7-.=2GT\L(9&K]:VP
M0GE=HD0]*+_3[1 @[S- -AQKU&=F]3]Q-@0.5.K(UJC/S>K?,*O5H4;]YG1U
MW>JW9O4Y"?O4+9GL.N.HSC@J[#E]&5?)N5#=&*G42HKBN&CR*Y75%9&T(<#C
M"VC++?!+\?AJAUD$_OU+F@1W@J3\/P,@IP;D%(#<'D!U.<6RZ.1B9[)6R@HZ
MU^6J-.85QA1O;J<.M -?AF;;SDE7;.3XGNO58GM8W1JK:\1Z\TQ8&',"-BPN
MNR,LNX,7W:&@1S1),.-@0UCIAM:+<IF@[<70&^O!>34XSPCN*J6Y3-(&QQ&0
M,P>$"<$LSE9@28BNZ6:E.;\% CE0C\&O,?A&#%6E<!6:DC%J*IE1+G0PYGX'
MQF$RNQ(7[LC=%[K5"'G0UKLSJMT9F=UA-"0DXF#): HX3CHYU\5UI(FKW8,D
MJ)$$9B2R\&1@Y;17"%:,<EEBK^ARU:2"RL'P)$NS3D$&,BJ(#J%Y+6@/;?LW
M0VN/:]!CHZ&O>S!U0,;=4(UZ>A3:S4RS3RS"#(BUI*HDQA'XKH_%O#+F&>I/
M(X*0WP.S-7KA&XHK;HW<746)6KBP$S((^ZH+-E,!HM-8F%04=Y2(*X/MH%Q
MSW?=OL T P&:)\)^8%0&7T$=#8[3"8Z'1H?9[ KUA:^9"] \&%1Q@47.PK4<
MF.!JQ4@Q2 T]!!M:A]['F-BP87EXA.;?DXVNCRQVE(Y@0^?P")^_A1EF4$/D
MO6W?$#DTL^M=MB5R=+!Z'VWRK&%:./X818(:&D9F&K[7C,LCI#)#7:;U@\#Q
M>QH4-62+S&3;"^:D_=JLLKZ_87-&/:A:>_$36?>DO>\,=2GW(#HE#6KDD#^&
MP>%<.VYOWZ^&P9&9P=]KGSRKUNF->^5O*34R2MT<D]KWM:%^9*;^FO5+7Y5O
M.8^.^57:5!N+9@@-?=2S]T'-L$#FCX!%@L.RV:]6ZO<$DD$-[2/_@Y!,P^C(
MS.AO[:!1I^+=  ;>84%IQ*#?[9]CUO:=:D8$,H^(]VN?H-,^[G \/O0VZ#2&
MDG)[W&AF$C)O_P\_2#=U;>*B-I53,FVR@+3?!JC[<0#'CAZ4TTPEQSR5VJ 8
M2; H-ROD654SX0501E8Q%X3)5U',2"AD"I:D^)96!V AS<*<,>6"3-!6FFA<
MTSE2(=K;E1Y2K-4ZPU-GNM\P6\49!PE92B5[.))%QLICTO)&T$UQK/=(A:!I
M<;DF."),"<CW2RIW-=6-.BFL#ZNG_P-02P,$%     @ YD2M4J14U"5S @
MPP4  !D   !X;"]W;W)K<VAE971S+W-H965T-3@N>&ULE53?3]LP$/Y7K&C2
M0-J:-&F H;82+4S; PA1,1ZF/;C)M;'PCW!V*/SW.SLA*XQ6VTMBG^_[[KNS
M[\8;@_>V G#L24EM)U'E7'T:Q[:H0'$[,#5H.ED95-S1%M>QK1%X&4!*QFF2
M',6*"QU-Q\%VC=.Q:9P4&JZ1V48ICL\SD&8SB8;1B^%&K"OG#?%T7/,U+,#=
MUM=(N[AG*84";871#&$UB<Z&I_/<^P>''P(V=FO-?"9+8^[]YGLYB1(O""04
MSC-P^CW"'*3T1"3CH>.,^I >N+U^8?\:<J=<EMS"W,@[4;IJ$IU$K(05;Z2[
M,9MOT.43!!9&VO!EF]8WSR-6--89U8%)@1*Z_?.GK@Y;@.$N0-H!TK> T0Y
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
M2(NR,I<=Q0M;W&9<Z5)IFZE^S* P 7I^SKEZ[9@$U?-H^ ]02P,$%     @
MYD2M4E;GL8'V P  D@\  !D   !X;"]W;W)K<VAE971S+W-H965T-C(N>&UL
MK9?Q;YLX%,?_%2LZZ5;I%K"!0*8T4MOU;B?=MJK1;3\[\))8!<QL)VFE^^//
MQ@0R!=PFVB^ C?W>Q\_F^WBS/1=/<@.@T'.1E_)ZM%&J^N!Y,MU 0>685U#J
M-RLN"JIT4ZP]60F@63VIR#WB^Q.OH*P<S6=UWX.8S_A6Y:R$!X'DMBBH>+F%
MG.^O1WATZ'ADZXTR'=Y\5M$U+$#]6ST(W?):*QDKH)2,ETC ZGIT@S_<$F(F
MU".^,=C+HV=DEK+D_,DT_LZN1[XA@AQ294Q0?=O!'>2YL:0Y?C1&1ZU/,_'X
M^6#]SWKQ>C%+*N&.Y]]9IC;7HV2$,EC1;:X>^?X3- N*C+V4Y[*^HKT=&^O!
MZ58J7C23-4'!2GNGSTT@CB8$_L $TDRH ^%91S7E1ZKH?";X'@DS6ELS#_52
MZ]D:CI5F5Q9*Z+=,SU/SA>+ITX;G&0CY.[K_L67J!;U'=3?Z6IG(243+#%&T
ML!N'^ K=F%B:D>\^@J(LEU<S3VD:8]-+&\^WUC,9\!R@S[Q4&XGNRPRRG^=[
M>A7M4LAA*;?$:? S%6,4X#\0\0G^#7E(;J@ ::\.^T$;JJ"V'PS8_[(MEB#,
M\INX.&R&K<VPMAD.V/RZ55+I\+)RC:A"2UBSLC0-[:4"P7B&WK&R6<D5^@_U
MK<8&QSJ*:D?F6]S-"<%AY,^\70]@U )&3L"_!"T5O)TB.J&("28#$),68N*$
MN*-EJK_CS-,JM )V#L_DA.=]&$;3?IZXY8F=//?/%1-G0,2G$#CR!X*2M!#)
M.4<']#=Z_J%)3@]-$D\P[D>;MFA3)]HWD&:/C&S <Z7U5S<41SO=;5 ;1D/\
M5LYIS^%. DSZ.;'?J9__RDZ"2)FDRQPN)&L<'*--"([" ;(C7<9.M?E>YQ,=
MN)L=")T?48,*Z$&P5%^U%"T,E4.%,.F\D5^A0QG/<RJDZ;(A,;'II+8W/M9Q
M<A2?8!Q& ^'IM!@';]:E2ZBL=4R.L*)Q-'#N<2?GV*WG TIU"6%X2DC&<3Q
MV.DY=@OZL79=@A7U!"X8#^UGI_#8+?&OJMDEK)-3UF <#VURI_[8+?_GR=LE
MX'$?^"09 .\R!G:G#+?:70*:G'S<X9@,'88N?>#I>=KW"*; ,&?C3O\S"OTK
MOZ4Y^H>MH"9_ <U]Y?J%[!("<2<$USGLB\ KYA++AK"/"ONW2T*4T1?7OR/I
M<@3!O^8@]I*[;1_(IP=PG+P*WJ4;XDXW@P>Q%]1MJPVQ!46304SOJ$PJ0*SK
M8E"BE&]+92NFMK<M.&]LF=4-M]6JKC5TAI0HAY6>ZH]C+8O"%H"VH7A5%UU+
MKG0)5S]N=-$,P@S0[U><JT/#.&C+\/G_4$L#!!0    ( .9$K5)*J.HR;P,
M )\,   9    >&PO=V]R:W-H965T<R]S:&5E=#8S+GAM;+U7;6_;-A#^*P=A
MP!I@M41*?DEA&TC2=AVPHD&"II\9Z6P1H4B7I.,&V(\?23F2"EMJ7'3S!YFD
M>,\]//(>GN8[I1],B6CA6R6D642EM9LW<6SR$BMF1FJ#TKU9*5TQZ[IZ'9N-
M1E8$HTK$-$DF<<6XC);S,':MEW.UM8)+O-9@ME7%]-,E"K5;1"1Z'KCAZ]+Z
M@7@YW[ UWJ+]O+G6KA<W* 6O4!JN)&A<+:(+\N:2G'N#,...X\YTVN"7<J_4
M@^_\52RBQ#-"@;GU$,S]/>(5"N&1'(^O>]"H\>D-N^UG]/=A\6XQ]\S@E1)?
M>&'+132+H, 5VPI[HW8?<+^@L<?+E3#A";MZ[MA-SK?&JFIO[!A47-;_[-L^
M$!V#-.DQH'L#&GC7C@++M\RRY5RK'6@_VZ'Y1EAJL';DN/2[<FNU>\N=G5W>
M6I4_E$H4J,WO\.[KEMLG> TW:*SFN<4"P@SX++DU\.HM6L:%.9O'UCGW$'&^
M=W19.Z(]CE+XJ*0M#;R3!1;?V\>.=,.</C._I(. 'YD>04K^ )I0\AO$8$JF
MT=3/ ?RTB4P:\-,>_"]A0UT +AY1NP,*?VHF+;@H([QG7,,=$UL<<)0UCK+@
M*.MQ]&EKC66RX'(-S,(]KKF4OJ-6L$'-50&ON(1""<&T\4/U4H]N0NUJ%ESY
MC'Q<SD:3+.G\R#Q^/,)VW+ =#[*]8C)W.57$3A%6R'V 7LYN?,".CJ;3XX0F
M#:'):?MT@UZ-? "OW(G3+N^W3,#??(6!Z1,ZGF<#^S9M'$]/V3>41;MCQQ8_
MC#:KB0%)H*H3A690L*>AHSQKF,X&L8]G\P#P>0-\/AC[DX%)TNI2\BNRHD[W
M,_@'CB7^7IAJ3^/.L<NR67+\V)&.<I)!AD$/\ 0:Y(#&V"=D#P_:\J"#/.[<
M)IQ"@Q[0>$UH;SA:N23I3Z?#R\FEAS%*:6^,6HDEV7\KYJ351S(LD-UC\3)5
M)(>R.![12<^:6UTDDQ]DO4!7KYS$I$8DM$.%T%'60Z552O+S4GD*O>F10*4]
M]P=IU9',_M\;A+3Z2<Y_Z1WR S@2N$'V@BLD[M2,%>IUJ(P-Y&HK;5T^-J--
M]7U1UYSM]+IT=Y68$V<# E?.-!E-W7G6=35<=ZS:A KT7EE7SX9FZ;X@4/L)
M[OU**?O<\0Z:;Y+EOU!+ P04    " #F1*U2V:K",&X"   J!@  &0   'AL
M+W=O<FMS:&5E=',O<VAE970V-"YX;6RU54U/VT 0_2LKBP-($"=V2"KD6(+0
MJE2@1D2TAZJ'Q9[8*[R[[NZ8T'_?V;5C B2Y]1+OQ[SWYF-GDJRU>;(E +(7
M62D["TK$^B(,;5:"Y':@:U!TL])&<J2M*4);&^"Y!\DJC(;#22BY4$&:^+.%
M21/=8"44+ RSC93<_+V"2J]GP2C8'-R+HD1W$*9)S0M8 C[4"T.[L&?)A01E
MA5;,P&H67(XNYE-G[PU^"%C;K35SD3QJ_>0V-_DL&#J'H((,'0.GSS/,H:H<
M$;GQI^,,>DD'W%YOV+_XV"F61VYAKJN?(L=R%GP*6 XKWE1XK]=?H8OGW/%E
MNK+^EZU;V\DX8%EC4<L.3!Y(H=HO?^GRL 4@GMV J -$[P'[%.(.$/M 6\]\
M6-<<>9H8O6;&61.;6_C<>#1%(Y2KXA(-W0K"83K74@JDLJ!E7.5LKA4*58#*
M!%AV? W(165/V!E[6%ZSXZ,3=L2$8G>BJJ@*-@F1G'!48=8)7K6"T1[!F-V1
M1&G99Y5#_A8?DO-]!-$F@JOH(.&W1@U8/#QET3 :[?!G?AA^QPW!1[O@;]R)
M^X3&GB_>PW>K57&&8"1;-"8KZ86QUQRS7[=DSFX0I/U]0&S<BXV]V'B/V/<&
M+5+9J&*LWLAEKR7=E8Z6<=0^"-?DS^EX$"7A\PX_SGL_S@_ZL<Q <2/T*:/>
M@HQ;/!#<I">=_/],3GNQZ<$(%A^SM^MM3S\F;S08OTM>N-6.$DSAIY0EYD9A
MVYG]:3\(+WW_AZ_F[12EUUD(95D%*X(.!U.J@VDG4[M!7?OF?M1(H\(O2QKF
M8)P!W:^TQLW&"?1_#^D_4$L#!!0    ( .9$K5)+Z1&.0@8  .8>   9
M>&PO=V]R:W-H965T<R]S:&5E=#8U+GAM;+59;6_;-A#^*X31 BT0V")%^:5(
M##1.LV18-B-NMP_#/M R$W.51)6B[&;HC]]14D0[D2@'C?/!$27=W</GC@]/
MTNE6JJ_9FG.-OL=1DIWUUEJG'P:#+%SSF&5]F?($KMQ)%3,-0W4_R%+%V:HP
MBJ,!\;SA(&8BZ4U/BW-S-3V5N8Y$PN<*97D<,_5PSB.Y/>OAWN.)6W&_UN;$
M8'J:LGN^X/I+.E<P&M1>5B+F229D@A2_.^M]Q!^NZ,08%'?\*?@VVSE&9BI+
M*;^:P?7JK.<91#SBH38N&/S;\!F/(N,)<'RKG/;JF,9P]_C1^V4Q>9C,DF5\
M)J._Q$JOSWKC'EKQ.Y9'^E9NKW@UH<#X"V64%;]H6]WK]5"89UK&E3$@B$52
M_F??*R)V#,BDQ8!4!N2I05L$OS+P#S6@E0$]U""H#(*G!KC%8%@9#)\88-IB
M,*H,1H=&&%<&XR*[93J*7%XPS::G2FZ1,G>#-W-0%$1A#2D4B:G=A59P58"=
MGB[R9<:_Y3S1Z-,&?C/T[H)K)J+L_>E 0P!SVR"LG)V7SDB+LX^IZB,R.D'$
M(_C+X@*]>_,>ZH@KQ:(&;[,#O'FX]):MF>)9@Y,+MY-?6=)'>%@X\5J=?'([
MN>!A'_FXP\GE(>1X>^0T>/G%[>6&J1H*;C"_Z@"1WP,=U4P:00R@@.HJ(G45
MD<(M;7$[D\F&*RV6$4<7?*D=+OW:I5^X] \L3/3W;W 'NM8\SOYQ^*>U?WH
MY$*"Y1U*I.89TA+!@@N_HG<B066>WZ,?J+WVRA!!$<+L$ILI&7D3#X]/!YL&
M;$&-+7@1G8!AKHIUQ%=H81 Z"!C6089'(7A4^Q\Y)V$1EYR&Y:1@##2',HZ!
M^1>Q_6GTC&V,<4!;R![7.,<O)7M6HNMB>E)'F!R%:>Q9$?<ZYK!#I\BR'%C.
M4SB3-B:AJ/I#6:]"[Q4Y\;'7S#K>V7BP$_-U8KB0Z@%=LE!$0C\ C%N^D=%&
M)/=H!J"%KJ^Y:+(JA<EQ$F%%"_L=D](<>-1(,<T;V73;$[\_]-XV;@L=AJ1/
M&PVO.@R#_BAXZYJ[%53L5M0;]EW$>8R64H&MR6'(4D@?)!;*S=QME#8L\_H#
MO6D$6X88[A2;[Q5_+>5F)16[-=666R@SW53I5QT>1D'?>TKQ/A@KO7AX&)@3
ME,#SB50KKJ('X.A;+E:L:.HW+,J;*NBJP_6X$Z45<.Q6\&?+95\987B9%U(R
M9\JED]A*,1X?9X%:*<:3HV_[LRK&WDXTIN, -Q<IL3I.W#K>S?BY$E$D&%Q:
M:*9<C1:Q2DSP45@G.^WA(?WA3[)>Q=AC/9CX 6UAW8HV<4M@(^L_T8$1*YF$
M'H=Y*WO$+5JOWH7-JH![:1@1[!&_)0]6%8E;N@[+PX'-&;$R1T;'28*5-=+5
M8AZM/9M5H7?3X5-*O* E&U8IB5LI&[(!ESF'!F<#&L31[_)IB[/_H&=5S_>.
MD@#?*ISO[C7G2B2A2%F$6"SSI*W].*_<#/=JV]%^^%8!?;<"7INLHY7(0F?\
M!HF;T/;P.P_3;HF;YRI<LXQ#Q8F0MX;W&Q36-7TK=+Z[-_R2 /&PCO^#4E^9
M=6Q6 4L 2M&-M0)ZW@X6@%K@6%7TNYI!=YM^WF$_[NBQ?*MYOEOSYEP)N4+L
M#@!94LKA=BW"]2-=*,N7__)0&]V.60)=HNEE03IXG)J&L7$6[MA#!*JDUYEK
M(E9%?7>S6*CS=9)IE<=F#2\JN)\ENJGAWM9P3]#CX\)']XH</:L T+;V$K":
M[+LUN7A+;\@L7E V4@K->1XOX2+T+(^O,4VI.EYIGOL-<MP"U2JQ_PI*#">?
MI.!DC^ZJT/Y(7)I-K6;3XV@VM9I-NS2;I^RAJ"78)F.1QTU\=SCI>ABB5L"I
M6\ +<E.+*1*Q (I3KD(8-D)S.PR\+FQ6W6F'NI<@V#U'L,\I;H1^!=O-8W5#
MK9H:MI6-9*MF=(3"_< ->N?]JWM+>,VJ_KR5+DQV7Z#!<:K:ZCWMT/O#JMKM
M!'>6CI5M^N)G_%=[,4>M&-/C//=3JZ'4K:&O\'+JL@JQ]W*JL3T:['R/,U^
M;YBZ%TF&(GX'EEY_!%6HRH^JY4#+M/A$MY1:R[@X7'.VXLK< -?O)*R%:F"^
M^M6?MJ?_ U!+ P04    " #F1*U2Q<V'MC8#   0%   #0   'AL+W-T>6QE
M<RYX;6S=6&UKVS 0_BM&':.#42?QZL9K$M@"A<$V"NV'?2M*+"<"6?)DI4OZ
MZZ>3'.>ENI#UP];,H;%TC^ZYYT[G6NV@-BO![N:,F6A9"ED/R=R8ZF,<U],Y
M*VE]H2HF+5(H75)CIWH6UY5F-*_!J11QK]-)XY)R248#N2AO2E-'4[609DC2
MUA3YVY=\2+KI!Q)YNK'*V9 \G+_]N5#F^DWD[V?OS\XZ#^^N]^WG#GA'XB#I
MY1&D%QU[H<P.Q>C3X^@/D6/45[O4S7++M/;$'/M'IGPP8XP\.XK\ +4CCIN.
M& T*)3>-D1!OL)%IR:)'*H9D3 6?: Y>!2VY6'ES#PQ3)92.C.U(*Z4+EOK)
MPUT_@V9M>$HNE7:Q?03_/6F6[P'K&0CD0K0">\0;1H.*&L.TO+$3M]@9GT%1
M,[Y?55;A3--5MW=)-@[N9H-,E,Z9;L-TR=HT&@A6@!S-9W.X&U7% !JC2CO(
M.9TI29V&M4<SL+13)L0=/,D_BAWN9;&UIQW84=D.K:!FZ&G\!/BWV3SW-FWR
M(MZHXH_*?%[8=*2;0Z^P6\T*OG3S9=$*P-B[.#NM*K'Z)/A,ELPG?W3 T8"N
M_:*YTOS)1H-6F5H#TR1Z9-KPZ;;EEZ;5/5N:=3LM"UQS[P0U_]TZSYADFHIM
MT;;W7W.57ZPXN?I7DMUOE7W!08W-Z_FUB[P\!9'I*8@\B9[LGX+([/6+3%ZG
MQK@Y9&R=9';.,:TU@O/BD'R'DZG8!(TF"RX,E\ULSO.<R6?'&4MOZ,3^N;/#
M;]?GK* +8>Y;<$@VXV\LYXLR:U?=0B&:59OQ5TBOF[:'51N+RYPM63YNIGHV
M<</(#FS4Y@*'?>3&76$$\_%8& $,BX,IP'R\%Q;G?\JGC^;C,4Q;/XCT49\^
MZN.]0LC8?; X89_,7N%,LRQ)TA2KZ'@<5##&ZI:F\!-FP[2!!Q8'(OU9K?'=
MQCOD<!]@>WJH0[!,\4[$,L5K#4BX;N"19>'=QN* ![8+6.] _' <Z*FP3Y+
MKF+:L"<81[(,0Z 7PSV:IDAU4OB$]P=[2I(DR\((8&$%28(A\#3B"*8 -&!(
MDKCWX-[[*%Z_I^+-_P!'OP%02P,$%     @ YD2M4I>*NQS     $P(   L
M  !?<F5L<R\N<F5L<YV2N6[#, Q ?\70GC 'T"&(,V7Q%@3Y 5:B#]@2!8I%
MG;^OVJ5QD L9>3T\$MP>:4#M.*2VBZD8_1!2:5K5N %(MB6/:<Z10J[4+!XU
MA]) 1-MC0[!:+#Y +AEFM[UD%J=SI%>(7->=I3W;+T]!;X"O.DQQ0FE(2S,.
M\,W2?S+W\PPU1>5*(Y5;&GC3Y?YVX$G1H2)8%II%R=.B':5_'<?VD-/IKV,B
MM'I;Z/EQ:%0*CMQC)8QQ8K3^-8+)#^Q^ %!+ P04    " #F1*U21DN<K_X$
M   #*P  #P   'AL+W=O<FMB;V]K+GAM;,6:2V_;.!" _PKARV:!S=K6*P_$
M.>31W0!M8L1%]UC0$AT3H427I)*FOWY'LKT=)<I@+U.=;%$R]7DDS3<D=?9L
MW>/2VD?QO325GXW6(6Q.QV.?KU4I_9]VHRK8L[*NE $VW</8;YR2A5\K%4HS
MCB:3;%Q*78W.S_9]S=T8;]B@\J!M!8U-PQ>MGOW/_<VF>-)>+[71X64V:K\;
M-1*EKG2I?ZAB-IJ,A%_;Y[^MTS]L%:19Y,X:,QM-MSN^*!=T_J9YT4!^EDO?
MM@2YO)< ,AME$^API9T/[1%M_Q(8GQ0<O-VJ@_V@35#N2@;UE[/U1E</33?P
M+\;H;[1QV']N@WCJ_D\8[6JE<W5E\[I45=C&T2G3 %9^K3=^)"I9JMGHTCXI
M)^;R035_"LYR4VS_8  R%"YWJF&'NRE:1DZ>JE"55X6 ;]X:70!'(2ZDD56N
M!(*,",AH0,BO$8*,"<AX$,A%@P,_19 ) 9D,"-F)9$I ID-"Q@@R(R"S(2$3
M!'E$0!X-"9DBR&,"\GA(R Q!GA"0)[R0MS+43@F[$G<;Y;;[<0:?4"E\PLMV
M(;WV#=K<*0^'MD<(64$,Z[*4&),T#;-J[I4/KLXACB!?#$699<JLEIOJ"0Z
M2D1U+B?ED2FS2*#&@ELLO+17\/I;K3?-#S =)9 ILT$^*NF[L:),,656Q95:
M=B)#"6'*;(2;*K>E$I_E]VY\J/P_91; (MC\<6U-H9S_K;V9P@MFH]+^E#WO
MEZ4.S4&^O=4A^P?(#*K*7SV,5-J?,N?]1;WTZEL-!XGK)E-@L(A*^M&02;]3
MR454TH^8DSZ-B6NYB!Q@,&N@XR9Q  -'H_SOF(XR0L1L!"2I7C;*!Q&S#_IM
MU8M)B2)B%L566[U8E#,B9F?TY>=>2$HB$;-$^FI?<7"E@M2F2TGI)&+6"9UI
M\( LHH02,0N%QL1#LIC22SRH7O"@+*;T$@^JER.,2>DE9M8+C7F,,<D9+&;/
MT)@G&)-23LRL' KS:SL2_P^34D[,K!P:<XHQ*07%S JB,3N3JY2$8F8)T9BX
MD(PI"\7,%NH6DH?B5KK&F$]J*TR,25DH9K;0:\Q[E5L8=QF]#2N>K*8LE#!;
M"!>^AP)M_2%NX908D[)0PFRA+B;$5CFXX/?6--T]XXN>4!9*F"WT3JE^*!;0
M>5%C3,I"";.%=J7ZFV?G5;&9D,LHOV06#!@O;;FQ53N' ;FI;88VC$DI*/DU
MHY[]%39M$;^H-QNC7LTI)I2"$F8%]6)^J-M1QR?9P:04E# KB(QF9\HEH124
M,"NHF1-M[DRG"AW$!]FD]=!.';1/$<:D%)0P*VB/:2%YNM"<7-S:T(>94@I*
MF16TP[P!-18M8&\R2BG]I,SZV2$N@H,S@'JTV<7R3<V14OI)F?6SPYS/Y^*C
ME55_'"GQI.S3;#\G\'OT@S$I]Z3,[NF=,VHN/S2+Q09CDHOXS.YY!Q/*]Y5R
M#K_^DE+N28>8@8/GW?NZ>0,&8U+N20=8R ',?YI[M+LJD5+N29G=\]Z]N1,F
MQJ3<DW*OZA"/T.$%SI@9Y9Z,V3WO8%[[H*$S',V,\D_&[!\R(=WAA)11_LF8
M_?,.9CL4UCFN,C/*0AG[>V3$LJ@XP)B4A3)N"[U>&.WU>489*&L--&X/]N=G
MA5KI2A6WT+V']ER:?.Y$\[%]2R1)FY7@56W,);3=55!$%/MW./?OGY[_"U!+
M P04    " #F1*U2M7%@?!8"  "J)@  &@   'AL+U]R96QS+W=O<FMB;V]K
M+GAM;"YR96QSS=D[;MM %(7AK0A<@$?W-;8#RU4:MX$W0,BC!RR)!(=![-U'
MD OI$"G2&#P5,21X^3?\0 R??I5#.^Z[4]WM^[KX.!Y.==7LQK'_D5)=[\JQ
MK7==7T[G*YMN.+;C>3EL4]^NW]MM2;I<YC3<SFB>GVYG+EX_^_(_$[O-9K\N
M/[OU[V,YC?\8G/YTPWO=E3(VB]=VV)9QU:2/P_5T39>#W)TG-XN7MU4SO+Q)
MD^8.4@C2^8,,@FS^((<@GS\H("CF#\H0E.</NH>@^_F#'B#H8?Z@1PAZG#](
MEBCCDB!I@C6!UH)<"X'7@F +@=B"9 N!V8)H"X':@FP+@=N"< N!W()T"X'=
M@G@+@=Z*>BN!WHIZ*X'>.OG8)M!;46\ET%M1;R706U%O)=!;46\ET%M1;R70
M6U%O)=!;46\ET-M0;R/0VU!O(]#;4&\CT-LFFR4$>AOJ;01Z&^IM!'H;ZFT$
M>AOJ;01Z&^IM!'H;ZFT$>COJ[01Z.^KM!'H[ZNT$>COJ[01Z^V2SFT!O1[V=
M0&]'O9U ;T>]G4!O1[V=0&]'O9U [T"]@T#O0+V#0.] O8- [T"]@T#O0+V#
M0.^8_*PDT#M0[R#0.U#O(- [4.\@T#M0[R#0.Z/>F4#OC'IG KTSZIT)],ZH
M=R;0.Z/>F4#OC'KG[]2[CI^'4J\]7VM\_G=2/9[O+=?'7Y9?)R<OU 7G=%M1
MG_\"4$L#!!0    ( .9$K5+2-&04[ $   <F   3    6T-O;G1E;G1?5'EP
M97-=+GAM;,W:74_",!0&X+]"=FM8Z=?\B'"CWJH7_H&Z'61A6YNV(/Q[NP$F
M&B4:3'QO6*#M><]ZDN>*ZZ>MHS#:M$T7IMDB1G?%6"@7U)J06T==6IE;WYJ8
MOOH7YDRY-"_$Q&12L-)VD;HXCGV-;'9]2W.S:N+H;I-^#K7MIIFG)F2CF]W&
M/FN:&>>:NC0QK;-U5WU*&>\3\G1RV!,6M0MG:4/&ODSH5[X/V)][6)/W=46C
M1^/CO6G3+K9I6(C;AD)^O,07/=KYO"ZILN6J34?RX#R9*BR(8MODNZ)GQY-C
MNF':??*3\X<RQP+3SD=O74@3\_3[N,-(^M-CEPJ1C_7Q5WQ/3*5/?C_JIUU1
M]</L=+VOUB^'>00V/$Z_XX\S?J__RSX$2!\2I \%TH<&Z:, Z>,<I(\+D#XN
M0?K@$Y1&4$3E**1R%%,Y"JH<156.PBI'<96CP,I19!4HL@H4606*K )%5H$B
MJT"15:#(*E!D%2BR"A19)8JL$D56B2*K1)%5HL@J4625*+)*%%DEBJP215:%
M(JM"D56AR*I09%4HLBH4616*K I%5H4BJT*15:/(JE%DU2BR:A19-8JL&D56
MC2*K1I%5H\BJ460M4&0M4&0M4&0M4&0M4&0M_E/69VN7?QP_///6U-TAGPW_
M_YJ] 5!+ 0(4 Q0    ( .9$K5('04UB@0   +$    0              "
M 0    !D;V-0<F]P<R]A<' N>&UL4$L! A0#%     @ YD2M4GA7E*?O
M*P(  !$              ( !KP   &1O8U!R;W!S+V-O<F4N>&UL4$L! A0#
M%     @ YD2M4IE<G",0!@  G"<  !,              ( !S0$  'AL+W1H
M96UE+W1H96UE,2YX;6Q02P$"% ,4    " #F1*U2EC-M E %   &%@  &
M            @($."   >&PO=V]R:W-H965T<R]S:&5E=#$N>&UL4$L! A0#
M%     @ YD2M4HR.Q5Q<!@  D1P  !@              ("!E T  'AL+W=O
M<FMS:&5E=',O<VAE970R+GAM;%!+ 0(4 Q0    ( .9$K5+QLN6!( ,  "(+
M   8              " @284  !X;"]W;W)K<VAE971S+W-H965T,RYX;6Q0
M2P$"% ,4    " #F1*U24B6#A0$%  !M$0  &               @(%\%P
M>&PO=V]R:W-H965T<R]S:&5E=#0N>&UL4$L! A0#%     @ YD2M4BMEQWL4
M @  B00  !@              ("!LQP  'AL+W=O<FMS:&5E=',O<VAE970U
M+GAM;%!+ 0(4 Q0    ( .9$K5)#[>FDH (  -\&   8              "
M@?T>  !X;"]W;W)K<VAE971S+W-H965T-BYX;6Q02P$"% ,4    " #F1*U2
M61K!.P('  #;(0  &               @('3(0  >&PO=V]R:W-H965T<R]S
M:&5E=#<N>&UL4$L! A0#%     @ YD2M4DJG:K$C @  G@0  !@
M     ("!"RD  'AL+W=O<FMS:&5E=',O<VAE970X+GAM;%!+ 0(4 Q0    (
M .9$K5(;C,7]' @  $$D   8              " @60K  !X;"]W;W)K<VAE
M971S+W-H965T.2YX;6Q02P$"% ,4    " #F1*U2K[N )_$&  #P#P  &0
M            @(&V,P  >&PO=V]R:W-H965T<R]S:&5E=#$P+GAM;%!+ 0(4
M Q0    ( .9$K5*2T)XG81H  &=1   9              " @=XZ  !X;"]W
M;W)K<VAE971S+W-H965T,3$N>&UL4$L! A0#%     @ YD2M4L?'I0F/#P
MTR<  !D              ("!=E4  'AL+W=O<FMS:&5E=',O<VAE970Q,BYX
M;6Q02P$"% ,4    " #F1*U2KW*AVD,#   V!P  &0              @($\
M90  >&PO=V]R:W-H965T<R]S:&5E=#$S+GAM;%!+ 0(4 Q0    ( .9$K5+5
M5%8N?@,  +8'   9              " @;9H  !X;"]W;W)K<VAE971S+W-H
M965T,30N>&UL4$L! A0#%     @ YD2M4C*Y,\NJ"0  G2\  !D
M     ("!:VP  'AL+W=O<FMS:&5E=',O<VAE970Q-2YX;6Q02P$"% ,4
M" #F1*U2SD#:_X,.   .+0  &0              @(%,=@  >&PO=V]R:W-H
M965T<R]S:&5E=#$V+GAM;%!+ 0(4 Q0    ( .9$K5)"=G7$, 4  # ,   9
M              " @0:%  !X;"]W;W)K<VAE971S+W-H965T,3<N>&UL4$L!
M A0#%     @ YD2M4I9.3:;T$   T3$  !D              ("!;8H  'AL
M+W=O<FMS:&5E=',O<VAE970Q."YX;6Q02P$"% ,4    " #F1*U29B7<#(P"
M  "X!0  &0              @(&8FP  >&PO=V]R:W-H965T<R]S:&5E=#$Y
M+GAM;%!+ 0(4 Q0    ( .9$K5(V@?]<RP8  #$0   9              "
M@5N>  !X;"]W;W)K<VAE971S+W-H965T,C N>&UL4$L! A0#%     @ YD2M
M4K,IN#I$%   LC\  !D              ("!7:4  'AL+W=O<FMS:&5E=',O
M<VAE970R,2YX;6Q02P$"% ,4    " #F1*U2O0F6[MT%  !K#P  &0
M        @('8N0  >&PO=V]R:W-H965T<R]S:&5E=#(R+GAM;%!+ 0(4 Q0
M   ( .9$K5(D]N2(^@(  /T&   9              " @>R_  !X;"]W;W)K
M<VAE971S+W-H965T,C,N>&UL4$L! A0#%     @ YD2M4KIZB8E& P  /0<
M !D              ("!'<,  'AL+W=O<FMS:&5E=',O<VAE970R-"YX;6Q0
M2P$"% ,4    " #F1*U2=XNM"$\#  !1!P  &0              @(&:Q@
M>&PO=V]R:W-H965T<R]S:&5E=#(U+GAM;%!+ 0(4 Q0    ( .9$K5+A;1!=
M5@4   03   9              " @2#*  !X;"]W;W)K<VAE971S+W-H965T
M,C8N>&UL4$L! A0#%     @ YD2M4NLV03J;!0  (@\  !D
M ("!K<\  'AL+W=O<FMS:&5E=',O<VAE970R-RYX;6Q02P$"% ,4    " #F
M1*U2WZ#AO*("  !K!P  &0              @(%_U0  >&PO=V]R:W-H965T
M<R]S:&5E=#(X+GAM;%!+ 0(4 Q0    ( .9$K5+Y$AT>@00  $@7   9
M          " @5C8  !X;"]W;W)K<VAE971S+W-H965T,CDN>&UL4$L! A0#
M%     @ YD2M4F;&FAW' @    @  !D              ("!$-T  'AL+W=O
M<FMS:&5E=',O<VAE970S,"YX;6Q02P$"% ,4    " #F1*U24/BC:!P#   2
M"   &0              @($.X   >&PO=V]R:W-H965T<R]S:&5E=#,Q+GAM
M;%!+ 0(4 Q0    ( .9$K5)FFUJ.&@,  )@*   9              " @6'C
M  !X;"]W;W)K<VAE971S+W-H965T,S(N>&UL4$L! A0#%     @ YD2M4OH;
M)&N0 P  '@\  !D              ("!LN8  'AL+W=O<FMS:&5E=',O<VAE
M970S,RYX;6Q02P$"% ,4    " #F1*U2#/FX_24#  !3"   &0
M    @(%YZ@  >&PO=V]R:W-H965T<R]S:&5E=#,T+GAM;%!+ 0(4 Q0    (
M .9$K5+8T%$79P4  "P6   9              " @=7M  !X;"]W;W)K<VAE
M971S+W-H965T,S4N>&UL4$L! A0#%     @ YD2M4F7N0 <G P  *@L  !D
M             ("!<_,  'AL+W=O<FMS:&5E=',O<VAE970S-BYX;6Q02P$"
M% ,4    " #F1*U20W,6J$D#   V#   &0              @('1]@  >&PO
M=V]R:W-H965T<R]S:&5E=#,W+GAM;%!+ 0(4 Q0    ( .9$K5+XZ*!B[ (
M $ '   9              " @5'Z  !X;"]W;W)K<VAE971S+W-H965T,S@N
M>&UL4$L! A0#%     @ YD2M4IN2>)?3 @  N@@  !D              ("!
M=/T  'AL+W=O<FMS:&5E=',O<VAE970S.2YX;6Q02P$"% ,4    " #F1*U2
MO=AZ/# #  !Y"@  &0              @(%^  $ >&PO=V]R:W-H965T<R]S
M:&5E=#0P+GAM;%!+ 0(4 Q0    ( .9$K5)Z*#-/FP(   $'   9
M      " @>4# 0!X;"]W;W)K<VAE971S+W-H965T-#$N>&UL4$L! A0#%
M  @ YD2M4O$=,FJ^ @  1P<  !D              ("!MP8! 'AL+W=O<FMS
M:&5E=',O<VAE970T,BYX;6Q02P$"% ,4    " #F1*U2D: 3+_,$  !9&@
M&0              @(&L"0$ >&PO=V]R:W-H965T<R]S:&5E=#0S+GAM;%!+
M 0(4 Q0    ( .9$K5) KC<+U@(  - (   9              " @=8. 0!X
M;"]W;W)K<VAE971S+W-H965T-#0N>&UL4$L! A0#%     @ YD2M4A(/<W?4
M @  N @  !D              ("!XQ$! 'AL+W=O<FMS:&5E=',O<VAE970T
M-2YX;6Q02P$"% ,4    " #F1*U2.@& ?BL#  #3"@  &0
M@('N% $ >&PO=V]R:W-H965T<R]S:&5E=#0V+GAM;%!+ 0(4 Q0    ( .9$
MK5(D6'K\0P0  )$5   9              " @5 8 0!X;"]W;W)K<VAE971S
M+W-H965T-#<N>&UL4$L! A0#%     @ YD2M4MSZ<#F& @  F08  !D
M         ("!RAP! 'AL+W=O<FMS:&5E=',O<VAE970T."YX;6Q02P$"% ,4
M    " #F1*U2)7FJ'3@&  !#(   &0              @(&''P$ >&PO=V]R
M:W-H965T<R]S:&5E=#0Y+GAM;%!+ 0(4 Q0    ( .9$K5+/?]0\"00  (\/
M   9              " @?8E 0!X;"]W;W)K<VAE971S+W-H965T-3 N>&UL
M4$L! A0#%     @ YD2M4J)<UNVB P  '@T  !D              ("!-BH!
M 'AL+W=O<FMS:&5E=',O<VAE970U,2YX;6Q02P$"% ,4    " #F1*U2]Q_D
MW$P"  !E!0  &0              @($/+@$ >&PO=V]R:W-H965T<R]S:&5E
M=#4R+GAM;%!+ 0(4 Q0    ( .9$K5)G\+*HP0(  $P(   9
M  " @9(P 0!X;"]W;W)K<VAE971S+W-H965T-3,N>&UL4$L! A0#%     @
MYD2M4NC9I K^ @  20D  !D              ("!BC,! 'AL+W=O<FMS:&5E
M=',O<VAE970U-"YX;6Q02P$"% ,4    " #F1*U2WT#HHH8"  !.!P  &0
M            @(&_-@$ >&PO=V]R:W-H965T<R]S:&5E=#4U+GAM;%!+ 0(4
M Q0    ( .9$K5)$YJ;RG 0  .X4   9              " @7PY 0!X;"]W
M;W)K<VAE971S+W-H965T-38N>&UL4$L! A0#%     @ YD2M4E&[XLI;!0
MN!8  !D              ("!3SX! 'AL+W=O<FMS:&5E=',O<VAE970U-RYX
M;6Q02P$"% ,4    " #F1*U2I%34)7,"  ##!0  &0              @('A
M0P$ >&PO=V]R:W-H965T<R]S:&5E=#4X+GAM;%!+ 0(4 Q0    ( .9$K5([
M$.]%6 ,  ,D+   9              " @8M& 0!X;"]W;W)K<VAE971S+W-H
M965T-3DN>&UL4$L! A0#%     @ YD2M4F2Y+990 P  CPL  !D
M     ("!&DH! 'AL+W=O<FMS:&5E=',O<VAE970V,"YX;6Q02P$"% ,4
M" #F1*U20TI&LQ<#   J"0  &0              @(&A30$ >&PO=V]R:W-H
M965T<R]S:&5E=#8Q+GAM;%!+ 0(4 Q0    ( .9$K5)6Y[&!]@,  )(/   9
M              " @>]0 0!X;"]W;W)K<VAE971S+W-H965T-C(N>&UL4$L!
M A0#%     @ YD2M4DJHZC)O P  GPP  !D              ("!'%4! 'AL
M+W=O<FMS:&5E=',O<VAE970V,RYX;6Q02P$"% ,4    " #F1*U2V:K",&X"
M   J!@  &0              @('"6 $ >&PO=V]R:W-H965T<R]S:&5E=#8T
M+GAM;%!+ 0(4 Q0    ( .9$K5)+Z1&.0@8  .8>   9              "
M@6=; 0!X;"]W;W)K<VAE971S+W-H965T-C4N>&UL4$L! A0#%     @ YD2M
M4L7-A[8V P  $!0   T              ( !X&$! 'AL+W-T>6QE<RYX;6Q0
M2P$"% ,4    " #F1*U2EXJ[',     3 @  "P              @ %!90$
M7W)E;',O+G)E;'-02P$"% ,4    " #F1*U21DN<K_X$   #*P  #P
M        @ $J9@$ >&PO=V]R:V)O;VLN>&UL4$L! A0#%     @ YD2M4K5Q
M8'P6 @  JB8  !H              ( !56L! 'AL+U]R96QS+W=O<FMB;V]K
M+GAM;"YR96QS4$L! A0#%     @ YD2M4M(T9!3L 0  !R8  !,
M     ( !HVT! %M#;VYT96YT7U1Y<&5S72YX;6Q02P4&     $D 20#V$P
&P&\!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>77
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>78
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
..report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

..report table.authRefData a {
	display: block;
	font-weight: bold;
}

..report table.authRefData p {
	margin-top: 0px;
}

..report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

..report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

..report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

..report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
..pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
..report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

..report hr {
	border: 1px solid #acf;
}

/* Top labels */
..report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

..report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

..report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

..report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

..report td.pl div.a {
	width: 200px;
}

..report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
..report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
..report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
..report .re, .report .reu {
	background-color: #def;
}

..report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
..report .ro, .report .rou {
	background-color: white;
}

..report .rou td {
	border-bottom: 1px solid black;
}

..report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
..report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
..report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

..report .nump {
	padding-left: 2em;
}

..report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
..report .text {
	text-align: left;
	white-space: normal;
}

..report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

..report .text .more {
	display: none;
}

..report .text .note {
	font-style: italic;
	font-weight: bold;
}

..report .text .small {
	width: 10em;
}

..report sup {
	font-style: italic;
}

..report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.21.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>189</ContextCount>
  <ElementCount>404</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>72</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>6</UnitCount>
  <MyReports>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0001001 - Document - Cover Page</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CoverPage</Role>
      <ShortName>Cover Page</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>1001002 - Statement - Condensed Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets</Role>
      <ShortName>Condensed Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>1002003 - Statement - Condensed Consolidated Balance Sheets (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>1003004 - Statement - Condensed Consolidated Statements of Operations (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Operations (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>1004005 - Statement - Condensed Consolidated Statements of Operations (Unaudited) (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical</Role>
      <ShortName>Condensed Consolidated Statements of Operations (Unaudited) (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>1005006 - Statement - Condensed Consolidated Statements of Comprehensive Loss (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Comprehensive Loss (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>1006007 - Statement - Condensed Consolidated Statements of Changes in Stockholders' Equity (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Changes in Stockholders' Equity (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>1007008 - Statement - Condensed Consolidated Statements of Changes in Stockholders' Equity (Unaudited) (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical</Role>
      <ShortName>Condensed Consolidated Statements of Changes in Stockholders' Equity (Unaudited) (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>1008009 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Cash Flows (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>2101101 - Disclosure - Nature of Operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/NatureofOperations</Role>
      <ShortName>Nature of Operations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>2103102 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>2116103 - Disclosure - Restructuring</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/Restructuring</Role>
      <ShortName>Restructuring</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>2120104 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/Inventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>2124105 - Disclosure - Property and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/PropertyandEquipment</Role>
      <ShortName>Property and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>2127106 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/Leases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>2134107 - Disclosure - Debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/Debt</Role>
      <ShortName>Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>2140108 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>2142109 - Disclosure - Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquity</Role>
      <ShortName>Stockholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>2153110 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CommitmentsandContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>2155111 - Disclosure - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/SubsequentEvents</Role>
      <ShortName>Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>2204201 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies</ParentRole>
      <Position>21</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>2305301 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies</ParentRole>
      <Position>22</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>2317302 - Disclosure - Restructuring (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/RestructuringTables</Role>
      <ShortName>Restructuring (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.energyfocusinc.com/role/Restructuring</ParentRole>
      <Position>23</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>2321303 - Disclosure - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/InventoriesTables</Role>
      <ShortName>Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.energyfocusinc.com/role/Inventories</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>2325304 - Disclosure - Property and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/PropertyandEquipmentTables</Role>
      <ShortName>Property and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.energyfocusinc.com/role/PropertyandEquipment</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>2328305 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.energyfocusinc.com/role/Leases</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>2343306 - Disclosure - Stockholders' Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityTables</Role>
      <ShortName>Stockholders' Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.energyfocusinc.com/role/StockholdersEquity</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>2402401 - Disclosure - Nature of Operations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/NatureofOperationsDetails</Role>
      <ShortName>Nature of Operations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.energyfocusinc.com/role/NatureofOperations</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>2406402 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Certain Risks and Concentrations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies - Certain Risks and Concentrations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>2407403 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Disaggregation of Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies - Disaggregation of Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>2408404 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Reconciliation of Basic and Diluted Loss per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies - Reconciliation of Basic and Diluted Loss per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>2409405 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Net Loss per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies - Net Loss per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>32</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>2410406 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Product Warranties (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies - Product Warranties (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>33</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>2411407 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Warranty Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies - Warranty Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>34</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>2412408 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Financial Instruments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies - Financial Instruments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>35</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>2413409 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Financial Assets and Liabilities Measured at Fair Value (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies - Financial Assets and Liabilities Measured at Fair Value (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>2414410 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Fair Value Inputs (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies - Fair Value Inputs (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>37</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>2415411 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Rollforward of Fair Value Measurements (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails</Role>
      <ShortName>Basis of Presentation and Summary of Significant Accounting Policies - Rollforward of Fair Value Measurements (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>38</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>2418412 - Disclosure - Restructuring - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/RestructuringNarrativeDetails</Role>
      <ShortName>Restructuring - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>2419413 - Disclosure - Restructuring - Reconciliation of Restructuring Liability (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails</Role>
      <ShortName>Restructuring - Reconciliation of Restructuring Liability (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>2422414 - Disclosure - Inventories - Inventories, Net (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails</Role>
      <ShortName>Inventories - Inventories, Net (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>2423415 - Disclosure - Inventories - Reserve Rollforward (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails</Role>
      <ShortName>Inventories - Reserve Rollforward (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>2426416 - Disclosure - Property and Equipment - Schedule of Property and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails</Role>
      <ShortName>Property and Equipment - Schedule of Property and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>2429417 - Disclosure - Leases - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/LeasesNarrativeDetails</Role>
      <ShortName>Leases - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>2430418 - Disclosure - Leases - Components of Lease Cost (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails</Role>
      <ShortName>Leases - Components of Lease Cost (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>2431419 - Disclosure - Leases - Schedule of Supplemental Balance Sheet Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails</Role>
      <ShortName>Leases - Schedule of Supplemental Balance Sheet Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>2432420 - Disclosure - Leases - Schedule of Future Maturities of Lease Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails</Role>
      <ShortName>Leases - Schedule of Future Maturities of Lease Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>2433421 - Disclosure - Leases - Schedule of Supplemental Cash Flow Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails</Role>
      <ShortName>Leases - Schedule of Supplemental Cash Flow Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>2435422 - Disclosure - Debt - Credit Facilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails</Role>
      <ShortName>Debt - Credit Facilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>2436423 - Disclosure - Debt - Convertible Notes (Details)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails</Role>
      <ShortName>Debt - Convertible Notes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>2437424 - Disclosure - Debt - Iliad Note (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/DebtIliadNoteDetails</Role>
      <ShortName>Debt - Iliad Note (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>2438425 - Disclosure - Debt - Streeterville Note (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails</Role>
      <ShortName>Debt - Streeterville Note (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>2439426 - Disclosure - Debt - PPP Loan (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/DebtPPPLoanDetails</Role>
      <ShortName>Debt - PPP Loan (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>2441427 - Disclosure - Income Taxes - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails</Role>
      <ShortName>Income Taxes - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>2444428 - Disclosure - Stockholders' Equity - Stock Split (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityStockSplitDetails</Role>
      <ShortName>Stockholders' Equity - Stock Split (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>2445429 - Disclosure - Stockholders' Equity - Preferred Stock (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails</Role>
      <ShortName>Stockholders' Equity - Preferred Stock (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>2446430 - Disclosure - Stockholders' Equity - Issuance of Common Stock and Warrants (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails</Role>
      <ShortName>Stockholders' Equity - Issuance of Common Stock and Warrants (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>2447431 - Disclosure - Stockholders' Equity - Warrants (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityWarrantsDetails</Role>
      <ShortName>Stockholders' Equity - Warrants (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>2448432 - Disclosure - Stockholders' Equity - Schedule of Warrants Outstanding (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails</Role>
      <ShortName>Stockholders' Equity - Schedule of Warrants Outstanding (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>2449433 - Disclosure - Stockholders' Equity - Stock-Based Compensation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails</Role>
      <ShortName>Stockholders' Equity - Stock-Based Compensation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>2450434 - Disclosure - Stockholders' Equity - Estimates Utilized (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails</Role>
      <ShortName>Stockholders' Equity - Estimates Utilized (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>2451435 - Disclosure - Stockholders' Equity - Stock Options and a Summary of Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails</Role>
      <ShortName>Stockholders' Equity - Stock Options and a Summary of Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>2452436 - Disclosure - Stockholders' Equity - Restricted Stock Units (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails</Role>
      <ShortName>Stockholders' Equity - Restricted Stock Units (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>2454437 - Disclosure - Commitments and Contingencies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails</Role>
      <ShortName>Commitments and Contingencies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.energyfocusinc.com/role/CommitmentsandContingencies</ParentRole>
      <Position>64</Position>
    </Report>
    <Report instance="efoi-20210331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>2456438 - Disclosure - Subsequent Events (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.energyfocusinc.com/role/SubsequentEventsDetails</Role>
      <ShortName>Subsequent Events (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.energyfocusinc.com/role/SubsequentEvents</ParentRole>
      <Position>65</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-Q" original="efoi-20210331.htm">efoi-20210331.htm</File>
    <File>a20210331exhibit31110-q.htm</File>
    <File>a20210331exhibit31210-q.htm</File>
    <File>a20210331exhibit32110-q.htm</File>
    <File>efoi-20210331.xsd</File>
    <File>efoi-20210331_cal.xml</File>
    <File>efoi-20210331_def.xml</File>
    <File>efoi-20210331_lab.xml</File>
    <File>efoi-20210331_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy>http://xbrl.sec.gov/dei/2020-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://fasb.org/us-gaap/2020-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://fasb.org/srt/2020-01-31</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>82
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "efoi-20210331.htm": {
   "axisCustom": 0,
   "axisStandard": 26,
   "contextCount": 189,
   "dts": {
    "calculationLink": {
     "local": [
      "efoi-20210331_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "efoi-20210331_def.xml"
     ],
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-eedm-def-2020-01-31.xml",
      "http://xbrl.fasb.org/srt/2020/elts/srt-eedm1-def-2020-01-31.xml"
     ]
    },
    "inline": {
     "local": [
      "efoi-20210331.htm"
     ]
    },
    "labelLink": {
     "local": [
      "efoi-20210331_lab.xml"
     ],
     "remote": [
      "https://xbrl.sec.gov/dei/2020/dei-doc-2020-01-31.xml",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-doc-2020-01-31.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "efoi-20210331_pre.xml"
     ]
    },
    "referenceLink": {
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-ref-2020-01-31.xml",
      "https://xbrl.sec.gov/dei/2020/dei-ref-2020-01-31.xml"
     ]
    },
    "schema": {
     "local": [
      "efoi-20210331.xsd"
     ],
     "remote": [
      "http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd",
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd",
      "http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://xbrl.fasb.org/srt/2020/elts/srt-types-2020-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-roles-2020-01-31.xsd",
      "http://xbrl.fasb.org/srt/2020/elts/srt-roles-2020-01-31.xsd",
      "https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-types-2020-01-31.xsd",
      "https://xbrl.sec.gov/dei/2020/dei-2020-01-31.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "http://xbrl.fasb.org/us-gaap/2020/elts/us-parts-codification-2020-01-31.xsd",
      "http://www.xbrl.org/lrr/role/deprecated-2009-12-16.xsd"
     ]
    }
   },
   "elementCount": 544,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2020-01-31": 4,
    "http://www.energyfocusinc.com/20210331": 1,
    "http://xbrl.sec.gov/dei/2020-01-31": 6,
    "total": 11
   },
   "keyCustom": 60,
   "keyStandard": 344,
   "memberCustom": 26,
   "memberStandard": 43,
   "nsprefix": "efoi",
   "nsuri": "http://www.energyfocusinc.com/20210331",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "0001001 - Document - Cover Page",
     "role": "http://www.energyfocusinc.com/role/CoverPage",
     "shortName": "Cover Page",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NatureOfOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2101101 - Disclosure - Nature of Operations",
     "role": "http://www.energyfocusinc.com/role/NatureofOperations",
     "shortName": "Nature of Operations",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NatureOfOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2103102 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2116103 - Disclosure - Restructuring",
     "role": "http://www.energyfocusinc.com/role/Restructuring",
     "shortName": "Restructuring",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2120104 - Disclosure - Inventories",
     "role": "http://www.energyfocusinc.com/role/Inventories",
     "shortName": "Inventories",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2124105 - Disclosure - Property and Equipment",
     "role": "http://www.energyfocusinc.com/role/PropertyandEquipment",
     "shortName": "Property and Equipment",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeFinanceLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2127106 - Disclosure - Leases",
     "role": "http://www.energyfocusinc.com/role/Leases",
     "shortName": "Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeFinanceLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2134107 - Disclosure - Debt",
     "role": "http://www.energyfocusinc.com/role/Debt",
     "shortName": "Debt",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2140108 - Disclosure - Income Taxes",
     "role": "http://www.energyfocusinc.com/role/IncomeTaxes",
     "shortName": "Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2142109 - Disclosure - Stockholders' Equity",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquity",
     "shortName": "Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2153110 - Disclosure - Commitments and Contingencies",
     "role": "http://www.energyfocusinc.com/role/CommitmentsandContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1001002 - Statement - Condensed Consolidated Balance Sheets",
     "role": "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
     "shortName": "Condensed Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:AccountsReceivableNetCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2155111 - Disclosure - Subsequent Events",
     "role": "http://www.energyfocusinc.com/role/SubsequentEvents",
     "shortName": "Subsequent Events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2204201 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2305301 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Tables)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2317302 - Disclosure - Restructuring (Tables)",
     "role": "http://www.energyfocusinc.com/role/RestructuringTables",
     "shortName": "Restructuring (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2321303 - Disclosure - Inventories (Tables)",
     "role": "http://www.energyfocusinc.com/role/InventoriesTables",
     "shortName": "Inventories (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2325304 - Disclosure - Property and Equipment (Tables)",
     "role": "http://www.energyfocusinc.com/role/PropertyandEquipmentTables",
     "shortName": "Property and Equipment (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2328305 - Disclosure - Leases (Tables)",
     "role": "http://www.energyfocusinc.com/role/LeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2343306 - Disclosure - Stockholders' Equity (Tables)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityTables",
     "shortName": "Stockholders' Equity (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i66985daeedc64cd7ab86f489ac45819c_I20200611",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2402401 - Disclosure - Nature of Operations (Details)",
     "role": "http://www.energyfocusinc.com/role/NatureofOperationsDetails",
     "shortName": "Nature of Operations (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:ConcentrationRiskCreditRisk",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i4ac3ca3389b54e11881bc600bc76e5c1_D20210101-20210331",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2406402 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Certain Risks and Concentrations (Details)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies - Certain Risks and Concentrations (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:ConcentrationRiskCreditRisk",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i4ac3ca3389b54e11881bc600bc76e5c1_D20210101-20210331",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1002003 - Statement - Condensed Consolidated Balance Sheets (Parentheticals)",
     "role": "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
     "shortName": "Condensed Consolidated Balance Sheets (Parentheticals)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2407403 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Disaggregation of Revenue (Details)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies - Disaggregation of Revenue (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i18a690ed9a9a41458d0feffe21f8dcca_D20210101-20210331",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2408404 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Reconciliation of Basic and Diluted Loss per Share (Details)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies - Reconciliation of Basic and Diluted Loss per Share (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i23f283c771fb442cbcbc4e3518a209e7_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2409405 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Net Loss per Share (Details)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies - Net Loss per Share (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i23f283c771fb442cbcbc4e3518a209e7_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia0662236cd9941438e3fb2c0b78a0713_D20160401-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "efoi:StandardProductWarrantyNumberofYears",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2410406 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Product Warranties (Details)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies - Product Warranties (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia0662236cd9941438e3fb2c0b78a0713_D20160401-20210331",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "efoi:StandardProductWarrantyNumberofYears",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyAccrual",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411407 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Warranty Activity (Details)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies - Warranty Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyAccrual",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "efoi:ClassOfWarrantOrRightWarrantsIssued",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2412408 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Financial Instruments (Details)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies - Financial Instruments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i63ccc98555614cfab54ffbdf8ae024fc_I20200331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2413409 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Financial Assets and Liabilities Measured at Fair Value (Details)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies - Financial Assets and Liabilities Measured at Fair Value (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i4de7feba86f4411e8431d327acf726a6_I20200331",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate",
      "reportCount": 1,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2414410 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Fair Value Inputs (Details)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies - Fair Value Inputs (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i84aed75aecf64140a55d8201e6975d87_D20200101-20200331",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia14618e080534548a2781f9ad7ec8f84_I20191231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherDeferredCompensationArrangementsLiabilityCurrent",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2415411 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Rollforward of Fair Value Measurements (Details)",
     "role": "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails",
     "shortName": "Basis of Presentation and Summary of Significant Accounting Policies - Rollforward of Fair Value Measurements (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i25cc70700a1249cc860b650b1569c291_D20200101-20200331",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringCosts",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2418412 - Disclosure - Restructuring - Narrative (Details)",
     "role": "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails",
     "shortName": "Restructuring - Narrative (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i9c3de87bc8c44c3da15548537e3ffc68_I20200630",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquity",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1003004 - Statement - Condensed Consolidated Statements of Operations (Unaudited)",
     "role": "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited",
     "shortName": "Condensed Consolidated Statements of Operations (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RestructuringReserveCurrent",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2419413 - Disclosure - Restructuring - Reconciliation of Restructuring Liability (Details)",
     "role": "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails",
     "shortName": "Restructuring - Reconciliation of Restructuring Liability (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i14709b4c82a0489196f048d100db74eb_I20201231",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:RestructuringReserve",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2422414 - Disclosure - Inventories - Inventories, Net (Details)",
     "role": "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails",
     "shortName": "Inventories - Inventories, Net (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "efoi:InventoryValuationReservesRawMaterials",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2423415 - Disclosure - Inventories - Reserve Rollforward (Details)",
     "role": "http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails",
     "shortName": "Inventories - Reserve Rollforward (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "lang": "en-US",
      "name": "efoi:InventoryValuationReservesProvisionAccrual",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2426416 - Disclosure - Property and Equipment - Schedule of Property and Equipment (Details)",
     "role": "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails",
     "shortName": "Property and Equipment - Schedule of Property and Equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i01c4d52bc6c44c60ae149c09a5bffa8c_I20210121",
      "decimals": "4",
      "first": true,
      "lang": "en-US",
      "name": "efoi:LesseeOperatingLeaseInterestRateEffectiveRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2429417 - Disclosure - Leases - Narrative (Details)",
     "role": "http://www.energyfocusinc.com/role/LeasesNarrativeDetails",
     "shortName": "Leases - Narrative (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i01c4d52bc6c44c60ae149c09a5bffa8c_I20210121",
      "decimals": "4",
      "first": true,
      "lang": "en-US",
      "name": "efoi:LesseeOperatingLeaseInterestRateEffectiveRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubleaseIncome",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2430418 - Disclosure - Leases - Components of Lease Cost (Details)",
     "role": "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails",
     "shortName": "Leases - Components of Lease Cost (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubleaseIncome",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "efoi:LeaseSupplementalBalanceSheetInformationTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2431419 - Disclosure - Leases - Schedule of Supplemental Balance Sheet Information (Details)",
     "role": "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails",
     "shortName": "Leases - Schedule of Supplemental Balance Sheet Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "efoi:LeaseSupplementalBalanceSheetInformationTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "lang": "en-US",
      "name": "efoi:OperatingLeaseRightofUseAssetIncludingRestructuredLeases",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2432420 - Disclosure - Leases - Schedule of Future Maturities of Lease Liabilities (Details)",
     "role": "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails",
     "shortName": "Leases - Schedule of Future Maturities of Lease Liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "efoi:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2433421 - Disclosure - Leases - Schedule of Supplemental Cash Flow Information (Details)",
     "role": "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails",
     "shortName": "Leases - Schedule of Supplemental Cash Flow Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "efoi:SupplementalCashFlowInformationRelatedToLeasesTableTextBlock",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i95512250be8748d786dbf0e2762ce66f_I20200811",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "efoi:DebtInstrumentNumberOfCreditFacilities",
      "reportCount": 1,
      "unique": true,
      "unitRef": "creditfacility",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2435422 - Disclosure - Debt - Credit Facilities (Details)",
     "role": "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
     "shortName": "Debt - Credit Facilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i95512250be8748d786dbf0e2762ce66f_I20200811",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "efoi:DebtInstrumentNumberOfCreditFacilities",
      "reportCount": 1,
      "unique": true,
      "unitRef": "creditfacility",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": null,
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1004005 - Statement - Condensed Consolidated Statements of Operations (Unaudited) (Parenthetical)",
     "role": "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical",
     "shortName": "Condensed Consolidated Statements of Operations (Unaudited) (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": null
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i60bf27a363d84282adb85969c19c38da_D20190329-20190329",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProceedsFromIssuanceOfSubordinatedLongTermDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2436423 - Disclosure - Debt - Convertible Notes (Details)",
     "role": "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
     "shortName": "Debt - Convertible Notes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i60bf27a363d84282adb85969c19c38da_D20190329-20190329",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProceedsFromIssuanceOfSubordinatedLongTermDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ib438250335dd4372a2373f976a591fda_D20200101-20200131",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "efoi:DebtInstrumentProceedsToBePaidToLenderPercent",
      "reportCount": 1,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2437424 - Disclosure - Debt - Iliad Note (Details)",
     "role": "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
     "shortName": "Debt - Iliad Note (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i60c86ac561af49569ab990cbc12cc983_I20191125",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i61a322798f454174b23bfa9b494c02fd_I20210427",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2438425 - Disclosure - Debt - Streeterville Note (Details)",
     "role": "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails",
     "shortName": "Debt - Streeterville Note (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "efoi:PaymentProtectionProgramCurrent",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2439426 - Disclosure - Debt - PPP Loan (Details)",
     "role": "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
     "shortName": "Debt - PPP Loan (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "idf0470d514ad4ac296bafa544697e13e_D20200417-20200417",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ProceedsFromLoanOriginations1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "efoi:DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2441427 - Disclosure - Income Taxes - Narrative (Details)",
     "role": "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails",
     "shortName": "Income Taxes - Narrative (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "efoi:DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i66985daeedc64cd7ab86f489ac45819c_I20200611",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2444428 - Disclosure - Stockholders' Equity - Stock Split (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityStockSplitDetails",
     "shortName": "Stockholders' Equity - Stock Split (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PreferredStockSharesAuthorized",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PreferredStockSharesAuthorized",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2445429 - Disclosure - Stockholders' Equity - Preferred Stock (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
     "shortName": "Stockholders' Equity - Preferred Stock (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i25e4e149c9e645cea2591a854500fb8b_I20200115",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:PreferredStockSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "efoi:ClassOfWarrantOrRightWarrantsIssued",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2446430 - Disclosure - Stockholders' Equity - Issuance of Common Stock and Warrants (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails",
     "shortName": "Stockholders' Equity - Issuance of Common Stock and Warrants (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "efoi:ClassOfWarrantOrRightWarrantsIssued",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2447431 - Disclosure - Stockholders' Equity - Warrants (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityWarrantsDetails",
     "shortName": "Stockholders' Equity - Warrants (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "efoi:ClassOfWarrantOrRightWarrantsIssued",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2448432 - Disclosure - Stockholders' Equity - Schedule of Warrants Outstanding (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails",
     "shortName": "Stockholders' Equity - Schedule of Warrants Outstanding (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1005006 - Statement - Condensed Consolidated Statements of Comprehensive Loss (Unaudited)",
     "role": "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited",
     "shortName": "Condensed Consolidated Statements of Comprehensive Loss (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2449433 - Disclosure - Stockholders' Equity - Stock-Based Compensation (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails",
     "shortName": "Stockholders' Equity - Stock-Based Compensation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharePrice",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2450434 - Disclosure - Stockholders' Equity - Estimates Utilized (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails",
     "shortName": "Stockholders' Equity - Estimates Utilized (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharePrice",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2451435 - Disclosure - Stockholders' Equity - Stock Options and a Summary of Activity (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails",
     "shortName": "Stockholders' Equity - Stock Options and a Summary of Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2452436 - Disclosure - Stockholders' Equity - Restricted Stock Units (Details)",
     "role": "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails",
     "shortName": "Stockholders' Equity - Restricted Stock Units (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i8982c8c54b0f44108c5dd74f7bed3f3b_I20201231",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PurchaseObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2454437 - Disclosure - Commitments and Contingencies (Details)",
     "role": "http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails",
     "shortName": "Commitments and Contingencies (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ia2ed7d6c1695406e89547655ae276683_I20210331",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PurchaseObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "ib1abd927789c4c3db262bebaaf83998e_D20200116-20200116",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockIssuedDuringPeriodSharesNewIssues",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2456438 - Disclosure - Subsequent Events (Details)",
     "role": "http://www.energyfocusinc.com/role/SubsequentEventsDetails",
     "shortName": "Subsequent Events (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "iff32125b13c7454683df0d63faf61ae3_D20210401-20210401",
      "decimals": "INF",
      "lang": "en-US",
      "name": "us-gaap:StockIssuedDuringPeriodSharesNewIssues",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i79484b12568d4589885611a2120d0f97_I20191231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1006007 - Statement - Condensed Consolidated Statements of Changes in Stockholders' Equity (Unaudited)",
     "role": "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited",
     "shortName": "Condensed Consolidated Statements of Changes in Stockholders' Equity (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i79484b12568d4589885611a2120d0f97_I20191231",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": null,
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1007008 - Statement - Condensed Consolidated Statements of Changes in Stockholders' Equity (Unaudited) (Parenthetical)",
     "role": "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical",
     "shortName": "Condensed Consolidated Statements of Changes in Stockholders' Equity (Unaudited) (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": null
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeLossFromContinuingOperations",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1008009 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "role": "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
     "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "efoi-20210331.htm",
      "contextRef": "i612079b69ed741e48b442b22207bd746_D20210101-20210331",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 72,
   "tag": {
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag",
        "terseLabel": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code",
        "terseLabel": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cover page.",
        "label": "Cover [Abstract]",
        "terseLabel": "Cover [Abstract]"
       }
      }
     },
     "localname": "CoverAbstract",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date",
        "terseLabel": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus",
        "terseLabel": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus",
        "terseLabel": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented.  If there is no historical data in the report, use the filing date. The format of the date is YYYY-MM-DD.",
        "label": "Document Period End Date",
        "terseLabel": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentQuarterlyReport": {
     "auth_ref": [
      "r414"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an quarterly report.",
        "label": "Document Quarterly Report",
        "terseLabel": "Document Quarterly Report"
       }
      }
     },
     "localname": "DocumentQuarterlyReport",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r415"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report",
        "terseLabel": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.",
        "label": "Document Type",
        "terseLabel": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One",
        "terseLabel": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressAddressLine2": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 2 such as Street or Suite number",
        "label": "Entity Address, Address Line Two",
        "terseLabel": "Entity Address, Address Line Two"
       }
      }
     },
     "localname": "EntityAddressAddressLine2",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town",
        "terseLabel": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code",
        "terseLabel": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province",
        "terseLabel": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key",
        "terseLabel": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.",
        "label": "Entity Common Stock, Shares Outstanding",
        "terseLabel": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Current Reporting Status",
        "terseLabel": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company",
        "terseLabel": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "Entity File Number",
        "terseLabel": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Filer Category",
        "terseLabel": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code",
        "terseLabel": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r417"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "Entity Interactive Data Current",
        "terseLabel": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name",
        "terseLabel": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company",
        "terseLabel": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business",
        "terseLabel": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number",
        "terseLabel": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number",
        "terseLabel": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r412"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security",
        "terseLabel": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r413"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name",
        "terseLabel": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol",
        "terseLabel": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CoverPage"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "efoi_A2017RestructuringPlanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "2017 Restructuring Plan [Member]",
        "label": "2017 Restructuring Plan [Member]",
        "terseLabel": "2017 Restructuring Plan"
       }
      }
     },
     "localname": "A2017RestructuringPlanMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_AccumulatedInterestOnSubordinatedDebt": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated Interest on Subordinated Debt",
        "label": "Accumulated Interest on Subordinated Debt",
        "terseLabel": "Accumulated interest on subordinated debt"
       }
      }
     },
     "localname": "AccumulatedInterestOnSubordinatedDebt",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_AustinCreditFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Austin Credit Facility",
        "label": "Austin Credit Facility [Member]",
        "terseLabel": "Austin Credit Facility"
       }
      }
     },
     "localname": "AustinCreditFacilityMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_AustinFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Austin Facility",
        "label": "Austin Facility [Member]",
        "terseLabel": "Austin Facility"
       }
      }
     },
     "localname": "AustinFacilityMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_BrilliantStartMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Brilliant Start",
        "label": "Brilliant Start [Member]",
        "terseLabel": "Brilliant Start"
       }
      }
     },
     "localname": "BrilliantStartMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_ClassOfWarrantOrRightWarrantsIssued": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Class Of Warrant Or Right, Warrants Issued",
        "label": "Class Of Warrant Or Right, Warrants Issued",
        "terseLabel": "Warrants issued (in shares)",
        "verboseLabel": "Number of Underlying Shares (in shares)"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightWarrantsIssued",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityWarrantsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "efoi_ClassOfWarrantOrRightWarrantsIssuedPricePerShare": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Class Of Warrant Or Right, Warrants Issued, Price Per Share",
        "label": "Class Of Warrant Or Right, Warrants Issued, Price Per Share",
        "terseLabel": "Purchase price (in usd per share)"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightWarrantsIssuedPricePerShare",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "efoi_CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commercial LEDFL Tubular LED Lamps (Excluding Battery Backup TLED), Troffer Luminaires, And Certain Globe Lights [Member]",
        "label": "Commercial LEDFL Tubular LED Lamps (Excluding Battery Backup TLED), Troffer Luminaires, And Certain Globe Lights [Member]",
        "terseLabel": "Commercial LEDFL Tubular LED Lamps (Excluding Battery Backup TLED), Troffer Luminaires, And Certain Globe Lights"
       }
      }
     },
     "localname": "CommercialLEDFLTubularLEDLampsExcludingBatteryBackupTLEDTrofferLuminairesAndCertainGlobeLightsMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_CommercialProductsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commercial Products",
        "label": "Commercial Products [Member]",
        "terseLabel": "Commercial"
       }
      }
     },
     "localname": "CommercialProductsMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_DSeriesLampsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "D-Series Lamps",
        "label": "D-Series Lamps [Member]",
        "terseLabel": "D-Series Lamps"
       }
      }
     },
     "localname": "DSeriesLampsMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_DebtInstrumentInterestRateStatedPercentageCollateralManagementFee": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Interest Rate, Stated Percentage, Collateral Management Fee",
        "label": "Debt Instrument, Interest Rate, Stated Percentage, Collateral Management Fee",
        "terseLabel": "Stated interest rate on collateral management fee"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentageCollateralManagementFee",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_DebtInstrumentNumberOfCreditFacilities": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Number Of Credit Facilities",
        "label": "Debt Instrument, Number Of Credit Facilities",
        "terseLabel": "Number of debt financing facilities"
       }
      }
     },
     "localname": "DebtInstrumentNumberOfCreditFacilities",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "efoi_DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Period After Issuance After Which Is Subject To Mandatory Redemption",
        "label": "Debt Instrument, Period After Issuance After Which Is Subject To Mandatory Redemption",
        "terseLabel": "Period after issuance after which debt is subject to mandatory redemption"
       }
      }
     },
     "localname": "DebtInstrumentPeriodAfterIssuanceAfterWhichIsSubjectToMandatoryRedemption",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "efoi_DebtInstrumentPrepaymentPremiumPercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument Prepayment Premium Percent",
        "label": "Debt Instrument Prepayment Premium Percent",
        "terseLabel": "Prepayment premium"
       }
      }
     },
     "localname": "DebtInstrumentPrepaymentPremiumPercent",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_DebtInstrumentProceedsToBePaidToLenderPercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Proceeds To Be Paid To Lender, Percent",
        "label": "Debt Instrument, Proceeds To Be Paid To Lender, Percent",
        "terseLabel": "Percentage of gross proceeds used to make payments on note"
       }
      }
     },
     "localname": "DebtInstrumentProceedsToBePaidToLenderPercent",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument, Right To Defer Mandatory Redemption, Number Of Deferrals",
        "label": "Debt Instrument, Right To Defer Mandatory Redemption, Number Of Deferrals",
        "terseLabel": "Right to defer mandatory redemption, number of deferrals"
       }
      }
     },
     "localname": "DebtInstrumentRightToDeferMandatoryRedemptionNumberOfDeferrals",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "efoi_DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument Subject To Mandatory Redemption, Maximum Amount",
        "label": "Debt Instrument Subject To Mandatory Redemption, Maximum Amount",
        "terseLabel": "Debt Instrument Subject To Mandatory Redemption, Maximum Amount"
       }
      }
     },
     "localname": "DebtInstrumentSubjectToMandatoryRedemptionMaximumAmount",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_DebtPrepaymentMaximumPercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Prepayment Maximum, Percentage",
        "label": "Debt Prepayment Maximum, Percentage",
        "terseLabel": "Debt prepayment limit, percent"
       }
      }
     },
     "localname": "DebtPrepaymentMaximumPercentage",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Deferred Tax Assets, Operating Loss Carryforwards, Portion Available After Application Of IRC Section 382 Limitations",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards, Portion Available After Application Of IRC Section 382 Limitations",
        "terseLabel": "Deferred tax assets, operating loss carryforwards, portion available after application of IRC Section 382 limitations"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwardsPortionAvailableAfterApplicationOfIRCSection382Limitations",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_DistributorToTheU.S.NavyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Distributor To The U.S. Navy [Member]",
        "label": "Distributor To The U.S. Navy [Member]",
        "terseLabel": "Distributor To The U.S. Navy"
       }
      }
     },
     "localname": "DistributorToTheU.S.NavyMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Distributor To The U.S. Navy Combined With Sales To Shipbuilders",
        "label": "Distributor To The U.S. Navy Combined With Sales To Shipbuilders [Member]",
        "terseLabel": "Distributor To The U.S. Navy Combined With Sales To Shipbuilders"
       }
      }
     },
     "localname": "DistributorToTheUSNavyCombinedWithSalesToShipbuildersMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_DomesticSupplierMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Domestic Supplier",
        "label": "Domestic Supplier [Member]",
        "terseLabel": "Domestic Supplier"
       }
      }
     },
     "localname": "DomesticSupplierMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_FinanceLeaseRightOfUseAssetAccumulatedDepreciation": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_FinanceLeaseRightOfUseAsset",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finance Lease, Right-Of-Use Asset, Accumulated Depreciation",
        "label": "Finance Lease, Right-Of-Use Asset, Accumulated Depreciation",
        "negatedTerseLabel": "Allowances for depreciation"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAssetAccumulatedDepreciation",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_FinanceLeaseRightOfUseAssetGross": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_FinanceLeaseRightOfUseAsset",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finance Lease, Right-Of-Use Asset, Gross",
        "label": "Finance Lease, Right-Of-Use Asset, Gross",
        "terseLabel": "Property and equipment"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAssetGross",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_FinanceLeaseRightOfUseAssetMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Finance Lease, Right Of Use Asset [Member]",
        "label": "Finance Lease, Right Of Use Asset [Member]",
        "terseLabel": "Finance lease right-of-use asset"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAssetMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_FusionParkMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fusion Park",
        "label": "Fusion Park [Member]",
        "terseLabel": "Fusion Park"
       }
      }
     },
     "localname": "FusionParkMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_IncreaseDecreaseInProvisionForWarranties": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 7.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase (Decrease) In Provision For Warranties",
        "label": "Increase (Decrease) In Provision For Warranties",
        "terseLabel": "Provision for warranties"
       }
      }
     },
     "localname": "IncreaseDecreaseInProvisionForWarranties",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_InstitutionalInvestorMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Institutional Investor",
        "label": "Institutional Investor [Member]",
        "terseLabel": "Investor Warrants"
       }
      }
     },
     "localname": "InstitutionalInvestorMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_InventoryFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory Facility",
        "label": "Inventory Facility [Member]",
        "terseLabel": "Inventory Facility"
       }
      }
     },
     "localname": "InventoryFacilityMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_InventoryReserveRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory, Reserve",
        "label": "Inventory, Reserve [Roll Forward]",
        "terseLabel": "Inventory, Reserve [Roll Forward]"
       }
      }
     },
     "localname": "InventoryReserveRollForward",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "efoi_InventoryValuationReservesProvisionAccrual": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory Valuation Reserves, Provision (Accrual)",
        "label": "Inventory Valuation Reserves, Provision (Accrual)",
        "terseLabel": "Accrual"
       }
      }
     },
     "localname": "InventoryValuationReservesProvisionAccrual",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_InventoryValuationReservesRawMaterials": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory Valuation Reserves, Raw Materials",
        "label": "Inventory Valuation Reserves, Raw Materials",
        "negatedLabel": "Reserves for excess, obsolete, and slow-moving inventories",
        "negatedPeriodEndLabel": "Reserves for excess, obsolete, and slow-moving inventories",
        "negatedPeriodStartLabel": "Beginning balance"
       }
      }
     },
     "localname": "InventoryValuationReservesRawMaterials",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails",
      "http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_InventoryValuationReservesSalesOfInventory": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory Valuation Reserves, Sales Of Inventory",
        "label": "Inventory Valuation Reserves, Sales Of Inventory",
        "terseLabel": "Reduction due to sold inventory"
       }
      }
     },
     "localname": "InventoryValuationReservesSalesOfInventory",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesReserveRollforwardDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_LEDFLTubularLEDLampsExcludingRedCapsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "LEDFL Tubular LED Lamps (Excluding Red Caps) [Member]",
        "label": "LEDFL Tubular LED Lamps (Excluding Red Caps) [Member]",
        "terseLabel": "LEDFL Tubular LED Lamps (Excluding Red Caps)"
       }
      }
     },
     "localname": "LEDFLTubularLEDLampsExcludingRedCapsMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_LeaseSupplementalBalanceSheetInformationTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lease, Supplemental Balance Sheet Information [Table Text Block]",
        "label": "Lease, Supplemental Balance Sheet Information [Table Text Block]",
        "terseLabel": "Schedule of Supplemental Balance Sheet Information"
       }
      }
     },
     "localname": "LeaseSupplementalBalanceSheetInformationTableTextBlock",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "efoi_LesseeOperatingLeaseInterestRateEffectiveRate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lessee, Operating Lease, Interest Rate, Effective Rate",
        "label": "Lessee, Operating Lease, Interest Rate, Effective Rate",
        "terseLabel": "Operating lease, borrowing rate"
       }
      }
     },
     "localname": "LesseeOperatingLeaseInterestRateEffectiveRate",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_LessorOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lessor, Operating Lease, Liability, Undiscounted Excess Amount",
        "label": "Lessor, Operating Lease, Liability, Undiscounted Excess Amount",
        "terseLabel": "Less imputed interest"
       }
      }
     },
     "localname": "LessorOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_LineOfCreditFacilityAnnualFacilityFeePeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line Of Credit Facility, Annual Facility Fee, Period",
        "label": "Line Of Credit Facility, Annual Facility Fee, Period",
        "terseLabel": "Annual facility fee, payment period"
       }
      }
     },
     "localname": "LineOfCreditFacilityAnnualFacilityFeePeriod",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "efoi_LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line of Credit Facility, Borrowing Capacity, Inventory Costs, Percent",
        "label": "Line of Credit Facility, Borrowing Capacity, Inventory Costs, Percent",
        "terseLabel": "Inventory costs"
       }
      }
     },
     "localname": "LineOfCreditFacilityBorrowingCapacityInventoryCostsPercent",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_LineOfCreditFacilityBorrowingCapacityInventoryValuePercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line of Credit Facility, Borrowing Capacity, Inventory Value, Percent",
        "label": "Line of Credit Facility, Borrowing Capacity, Inventory Value, Percent",
        "terseLabel": "Inventory, net orderly liquidation value"
       }
      }
     },
     "localname": "LineOfCreditFacilityBorrowingCapacityInventoryValuePercent",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line of Credit Facility, Borrowing Capacity, Value Of Accounts Receivable, Percent",
        "label": "Line of Credit Facility, Borrowing Capacity, Value Of Accounts Receivable, Percent",
        "terseLabel": "Percent of accounts receivable used as borrowing capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityBorrowingCapacityValueOfAccountsReceivablePercent",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_LineOfCreditFacilityCollateralManagementFee": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line Of Credit Facility, Collateral Management Fee",
        "label": "Line Of Credit Facility, Collateral Management Fee",
        "terseLabel": "Collateral management fee"
       }
      }
     },
     "localname": "LineOfCreditFacilityCollateralManagementFee",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_LineOfCreditFacilityMonthlyFacilityFee": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line Of Credit Facility, Monthly Facility Fee",
        "label": "Line Of Credit Facility, Monthly Facility Fee",
        "terseLabel": "Minimum monthly fee"
       }
      }
     },
     "localname": "LineOfCreditFacilityMonthlyFacilityFee",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_LineOfCreditFacilityMonthlyFacilityFeePercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line Of Credit Facility, Monthly Facility Fee, Percent",
        "label": "Line Of Credit Facility, Monthly Facility Fee, Percent",
        "terseLabel": "Monthly service fee"
       }
      }
     },
     "localname": "LineOfCreditFacilityMonthlyFacilityFeePercent",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_MMMProductsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "MMM Products",
        "label": "MMM Products [Member]",
        "terseLabel": "MMM products"
       }
      }
     },
     "localname": "MMMProductsMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net proceeds from the conversion of convertible debt to preferred stock",
        "label": "Net proceeds from the conversion of convertible debt to preferred stock",
        "terseLabel": "Net proceeds from the conversion of convertible debt to preferred stock"
       }
      }
     },
     "localname": "NetProceedsFromTheConversionOfConvertibleDebtToPreferredStock",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_NewCreditFacilitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "New Credit Facilities",
        "label": "New Credit Facilities [Member]",
        "terseLabel": "Credit Facilities"
       }
      }
     },
     "localname": "NewCreditFacilitiesMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Note Payable, Percentage Increase Due to Deferral of Redemption Option",
        "label": "Note Payable, Percentage Increase Due to Deferral of Redemption Option",
        "terseLabel": "Percentage increase due to deferral of redemption option"
       }
      }
     },
     "localname": "NotePayablePercentageIncreaseDueToDeferralOfRedemptionOption",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_NotePurchaseAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Note Purchase Agreement",
        "label": "Note Purchase Agreement [Member]",
        "terseLabel": "Note Purchase Agreement"
       }
      }
     },
     "localname": "NotePurchaseAgreementMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_OffshoreSupplierMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Offshore Supplier",
        "label": "Offshore Supplier [Member]",
        "terseLabel": "Offshore Supplier"
       }
      }
     },
     "localname": "OffshoreSupplierMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_OperatingLeaseCostNetOfSubleaseIncome": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operating Lease, Cost, Net Of Sublease Income",
        "label": "Operating Lease, Cost, Net Of Sublease Income",
        "totalLabel": "Operating lease cost, net"
       }
      }
     },
     "localname": "OperatingLeaseCostNetOfSubleaseIncome",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_OperatingLeaseLiabilityIncludingRestructuredLeases": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operating Lease, Liability, Including Restructured Leases",
        "label": "Operating Lease, Liability, Including Restructured Leases",
        "totalLabel": "Operating lease liabilities, total"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityIncludingRestructuredLeases",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_OperatingLeaseReceivable": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operating Lease, Receivable",
        "label": "Operating Lease, Receivable",
        "negatedTerseLabel": "Total lease obligations"
       }
      }
     },
     "localname": "OperatingLeaseReceivable",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Operating Lease, Right-of-Use Asset, Including Restructured Leases",
        "label": "Operating Lease, Right-of-Use Asset, Including Restructured Leases",
        "totalLabel": "Operating lease right-of-use assets, total"
       }
      }
     },
     "localname": "OperatingLeaseRightofUseAssetIncludingRestructuredLeases",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_OtherLEDProductsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other LED Products [Member]",
        "label": "Other LED Products [Member]",
        "terseLabel": "Other LED Products"
       }
      }
     },
     "localname": "OtherLEDProductsMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_PaycheckProtectionProgramCARESActMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Paycheck Protection Program CARES Act",
        "label": "Paycheck Protection Program CARES Act [Member]",
        "terseLabel": "Paycheck Protection Program"
       }
      }
     },
     "localname": "PaycheckProtectionProgramCARESActMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_PaymentProtectionProgramCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 11.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Payment Protection Program, Current",
        "label": "Payment Protection Program, Current",
        "terseLabel": "PPP loan"
       }
      }
     },
     "localname": "PaymentProtectionProgramCurrent",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_PaymentProtectionProgramNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Payment Protection Program, Noncurrent",
        "label": "Payment Protection Program, Noncurrent",
        "terseLabel": "PPP loan, net of current maturities"
       }
      }
     },
     "localname": "PaymentProtectionProgramNoncurrent",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_PaymentsForClearingFees": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Payments For Clearing Fees",
        "label": "Payments For Clearing Fees",
        "terseLabel": "Amount paid for clearing fees"
       }
      }
     },
     "localname": "PaymentsForClearingFees",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_PaymentsForPlacementAgentCommissions": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Payments For Placement Agent Commissions",
        "label": "Payments For Placement Agent Commissions",
        "terseLabel": "Amount paid for placement agent commissions"
       }
      }
     },
     "localname": "PaymentsForPlacementAgentCommissions",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Payments Related To Expenses For Registered Direct Offering And Concurrent Private Placement",
        "label": "Payments Related To Expenses For Registered Direct Offering And Concurrent Private Placement",
        "terseLabel": "Amount paid related to expenses for registered direct offering and concurrent private placement"
       }
      }
     },
     "localname": "PaymentsRelatedToExpensesForRegisteredDirectOfferingAndConcurrentPrivatePlacement",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_PercentageOfSeriesAPreferredStockEligibleToVote": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage of Series A Preferred Stock Eligible to Vote",
        "label": "Percentage of Series A Preferred Stock Eligible to Vote",
        "terseLabel": "Votes equal to the number of shares of common stock convertible"
       }
      }
     },
     "localname": "PercentageOfSeriesAPreferredStockEligibleToVote",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "efoi_ProceedsFromIssuanceOfCommonStockAndWarrants": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Proceeds from Issuance of Common Stock and Warrants",
        "label": "Proceeds from Issuance of Common Stock and Warrants",
        "terseLabel": "Proceeds from the issuance of common stock and warrants"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfCommonStockAndWarrants",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Proceeds from the Issuance of Common Stock and Warrants, Net of Issuance Costs",
        "label": "Proceeds from the Issuance of Common Stock and Warrants, Net of Issuance Costs",
        "terseLabel": "Proceeds from sale of common stock"
       }
      }
     },
     "localname": "ProceedsFromTheIssuanceOfCommonStockAndWarrantsNetOfIssuanceCosts",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_ReceivablesFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Receivables Facility",
        "label": "Receivables Facility [Member]",
        "terseLabel": "Receivables Facility"
       }
      }
     },
     "localname": "ReceivablesFacilityMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_RegionalCommercialLightingRetrofitCompanyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Regional Commercial Lighting Retrofit Company",
        "label": "Regional Commercial Lighting Retrofit Company [Member]",
        "terseLabel": "Distributor for the U.S. Navy and a Regional Commercial Lighting Retrofit Company"
       }
      }
     },
     "localname": "RegionalCommercialLightingRetrofitCompanyMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_RestructuredLeaseOperatingLeaseCost": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails": {
       "order": 2.0,
       "parentTag": "efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Lease, Operating Lease, Cost",
        "label": "Restructured Lease, Operating Lease, Cost",
        "terseLabel": "Lease cost"
       }
      }
     },
     "localname": "RestructuredLeaseOperatingLeaseCost",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Lease, Operating Lease, Cost, Net Of Sublease Income",
        "label": "Restructured Lease, Operating Lease, Cost, Net Of Sublease Income",
        "totalLabel": "Restructured lease income, net"
       }
      }
     },
     "localname": "RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredLeaseSubleaseIncome": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails": {
       "order": 1.0,
       "parentTag": "efoi_RestructuredLeaseOperatingLeaseCostNetOfSubleaseIncome",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Lease, Sublease Income",
        "label": "Restructured Lease, Sublease Income",
        "negatedTerseLabel": "Sub-lease income"
       }
      }
     },
     "localname": "RestructuredLeaseSubleaseIncome",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due",
        "label": "Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due",
        "totalLabel": "Total future undiscounted lease payments"
       }
      }
     },
     "localname": "RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 1.0,
       "parentTag": "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Five",
        "label": "Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Five",
        "terseLabel": "April 2025 to March 2026"
       }
      }
     },
     "localname": "RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 3.0,
       "parentTag": "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Four",
        "label": "Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Four",
        "terseLabel": "April 2024 to March 2025"
       }
      }
     },
     "localname": "RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 5.0,
       "parentTag": "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Three",
        "label": "Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Three",
        "terseLabel": "April 2023 to March 2024"
       }
      }
     },
     "localname": "RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 2.0,
       "parentTag": "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due in Rolling Year Two",
        "label": "Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due In Rolling Year Two",
        "terseLabel": "April 2022 to March 2023"
       }
      }
     },
     "localname": "RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 4.0,
       "parentTag": "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due Next Rolling Twelve Months",
        "label": "Restructured Leases, Lessee, Operating Lease, Liability, Payments, Due Next Rolling Twelve Months",
        "terseLabel": "April 2021 to March 2022"
       }
      }
     },
     "localname": "RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "order": 1.0,
       "parentTag": "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Leases, Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "label": "Restructured Leases, Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "negatedTerseLabel": "Less imputed interest"
       }
      }
     },
     "localname": "RestructuredLeasesLesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Leases, Operating Lease Liabilities, Payments, Due, Rolling Maturity [Abstract]",
        "label": "Restructured Leases, Operating Lease Liabilities, Payments, Due, Rolling Maturity [Abstract]",
        "terseLabel": "Restructured Leases"
       }
      }
     },
     "localname": "RestructuredLeasesOperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "efoi_RestructuredLeasesOperatingLeasePayments": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Leases, Operating Lease, Payments",
        "label": "Restructured Leases, Operating Lease, Payments",
        "terseLabel": "Operating cash flows from restructured leases"
       }
      }
     },
     "localname": "RestructuredLeasesOperatingLeasePayments",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Leases, Operating Lease, Weighted Average Remaining Lease Term",
        "label": "Restructured Leases, Operating Lease, Weighted Average Remaining Lease Term",
        "terseLabel": "Restructured lease, weighted average remaining lease term"
       }
      }
     },
     "localname": "RestructuredLeasesOperatingLeaseWeightedAverageRemainingLeaseTerm",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "efoi_RestructuredOperatingLeaseLiability": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "order": 2.0,
       "parentTag": "efoi_RestructuredLeasesLesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      },
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": {
       "order": 2.0,
       "parentTag": "efoi_OperatingLeaseLiabilityIncludingRestructuredLeases",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Operating Lease, Liability",
        "label": "Restructured Operating Lease, Liability",
        "terseLabel": "Restructured lease liabilities",
        "verboseLabel": "Total lease obligations"
       }
      }
     },
     "localname": "RestructuredOperatingLeaseLiability",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails",
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredOperatingLeaseLiabilityCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 9.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Operating Lease, Liability, Current",
        "label": "Restructured Operating Lease, Liability, Current",
        "terseLabel": "Restructured lease liabilities"
       }
      }
     },
     "localname": "RestructuredOperatingLeaseLiabilityCurrent",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuredOperatingLeaseRightOfUseAsset": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": {
       "order": 2.0,
       "parentTag": "efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructured Operating Lease, Right-Of-Use Asset",
        "label": "Restructured Operating Lease, Right-Of-Use Asset",
        "terseLabel": "Restructured lease right-of-use assets"
       }
      }
     },
     "localname": "RestructuredOperatingLeaseRightOfUseAsset",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_RestructuringReserveAccretion": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Restructuring Reserve, Accretion",
        "label": "Restructuring Reserve, Accretion",
        "terseLabel": "Accretion of lease obligations"
       }
      }
     },
     "localname": "RestructuringReserveAccretion",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "efoi_ShipbuilderForUSNavyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Shipbuilder For U.S. Navy",
        "label": "Shipbuilder For U.S. Navy [Member]",
        "terseLabel": "Shipbuilder For U.S. Navy"
       }
      }
     },
     "localname": "ShipbuilderForUSNavyMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_StandardProductWarrantyNumberofYears": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Standard Product Warranty, Number of Years",
        "label": "Standard Product Warranty, Number of Years",
        "terseLabel": "Warranty service periods"
       }
      }
     },
     "localname": "StandardProductWarrantyNumberofYears",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "efoi_StreetervilleNotePurchaseAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Streeterville Note Purchase Agreement",
        "label": "Streeterville Note Purchase Agreement [Member]",
        "terseLabel": "Streeterville Note"
       }
      }
     },
     "localname": "StreetervilleNotePurchaseAgreementMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "efoi_SupplementalCashFlowInformationRelatedToLeasesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Supplemental Cash Flow Information Related to Leases",
        "label": "Supplemental Cash Flow Information Related to Leases [Table Text Block]",
        "terseLabel": "Supplemental Cash Flow Information Related to Leases"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationRelatedToLeasesTableTextBlock",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "efoi_ToolingMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tooling [Member]",
        "terseLabel": "Tooling"
       }
      }
     },
     "localname": "ToolingMember",
     "nsuri": "http://www.energyfocusinc.com/20210331",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_CounterpartyNameAxis": {
     "auth_ref": [
      "r51",
      "r97"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Counterparty Name [Axis]",
        "terseLabel": "Counterparty Name [Axis]"
       }
      }
     },
     "localname": "CounterpartyNameAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r158",
      "r225",
      "r229",
      "r389"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]",
        "terseLabel": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r241",
      "r243",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r386",
      "r390"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r241",
      "r243",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r386",
      "r390"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r158",
      "r225",
      "r229",
      "r389"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]",
        "terseLabel": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r155",
      "r225",
      "r227",
      "r362",
      "r385",
      "r387"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]",
        "terseLabel": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r155",
      "r225",
      "r227",
      "r362",
      "r385",
      "r387"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]",
        "terseLabel": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r232",
      "r241",
      "r243",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r386",
      "r390"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "terseLabel": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r232",
      "r241",
      "r243",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r386",
      "r390"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "terseLabel": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RepurchaseAgreementCounterpartyNameDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Counterparty Name [Domain]",
        "terseLabel": "Counterparty Name [Domain]"
       }
      }
     },
     "localname": "RepurchaseAgreementCounterpartyNameDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioForecastMember": {
     "auth_ref": [
      "r242"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forecast [Member]",
        "terseLabel": "Scenario, Forecast"
       }
      }
     },
     "localname": "ScenarioForecastMember",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioUnspecifiedDomain": {
     "auth_ref": [
      "r242"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Domain]",
        "terseLabel": "Scenario [Domain]"
       }
      }
     },
     "localname": "ScenarioUnspecifiedDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r156",
      "r157",
      "r225",
      "r228",
      "r388",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]",
        "terseLabel": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r156",
      "r157",
      "r225",
      "r228",
      "r388",
      "r398",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]",
        "terseLabel": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_StatementScenarioAxis": {
     "auth_ref": [
      "r189",
      "r242",
      "r350"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Axis]",
        "terseLabel": "Scenario [Axis]"
       }
      }
     },
     "localname": "StatementScenarioAxis",
     "nsuri": "http://fasb.org/srt/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]",
        "terseLabel": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r38"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accounts Payable, Current",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsPayableMember": {
     "auth_ref": [
      "r10"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Obligations incurred and payable to vendors for goods and services received.",
        "label": "Accounts Payable [Member]",
        "terseLabel": "Accounts Payable"
       }
      }
     },
     "localname": "AccountsPayableMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold.",
        "label": "Accounts Receivable [Member]",
        "terseLabel": "Accounts receivable"
       }
      }
     },
     "localname": "AccountsReceivableMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r3",
      "r19",
      "r159",
      "r160"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts Receivable, after Allowance for Credit Loss, Current",
        "terseLabel": "Trade accounts receivable, less allowances of $14 and $8, respectively"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedEmployeeBenefitsCurrent": {
     "auth_ref": [
      "r6",
      "r7",
      "r41"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations, excluding pension and other postretirement benefits, incurred through that date and payable for perquisites provided to employees pertaining to services received from them. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Employee Benefits, Current",
        "terseLabel": "Accrued payroll and related benefits"
       }
      }
     },
     "localname": "AccruedEmployeeBenefitsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedProfessionalFeesCurrent": {
     "auth_ref": [
      "r6",
      "r7",
      "r41"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for professional fees, such as for legal and accounting services received. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Professional Fees, Current",
        "terseLabel": "Accrued legal and professional fees"
       }
      }
     },
     "localname": "AccruedProfessionalFeesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedSalesCommissionCurrent": {
     "auth_ref": [
      "r6",
      "r7",
      "r41"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for sales commissions. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Sales Commission, Current",
        "terseLabel": "Accrued sales commissions"
       }
      }
     },
     "localname": "AccruedSalesCommissionCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r36",
      "r174"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "negatedLabel": "Less: accumulated depreciation"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r22",
      "r53",
      "r54",
      "r55",
      "r379",
      "r395",
      "r396"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.",
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax",
        "terseLabel": "Accumulated other comprehensive loss"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r52",
      "r55",
      "r56",
      "r101",
      "r102",
      "r103",
      "r300",
      "r391",
      "r392"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]",
        "terseLabel": "Accumulated Other Comprehensive Loss"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r20"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.",
        "label": "Additional Paid in Capital, Common Stock",
        "terseLabel": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r101",
      "r102",
      "r103",
      "r271",
      "r272",
      "r273"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.",
        "label": "Additional Paid-in Capital [Member]",
        "terseLabel": "Additional Paid-in Capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Decrease for Tax Withholding Obligation",
        "negatedLabel": "Common stock withheld in lieu of income tax withholding on vesting of restricted stock units"
       }
      }
     },
     "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for option under share-based payment arrangement.",
        "label": "APIC, Share-based Payment Arrangement, Option, Increase for Cost Recognition",
        "terseLabel": "Stock-based compensation"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts": {
     "auth_ref": [
      "r211",
      "r219"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in additional paid in capital (APIC) resulting from direct costs associated with issuing stock. Includes, but is not limited to, legal and accounting fees and direct costs associated with stock issues under a shelf registration.",
        "label": "Adjustments to Additional Paid in Capital, Stock Issued, Issuance Costs",
        "negatedLabel": "Offering costs on issuance of common stock and warrants"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalStockIssuedIssuanceCosts",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued": {
     "auth_ref": [
      "r200",
      "r211",
      "r219"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in additional paid in capital (APIC) resulting from the issuance of warrants. Includes allocation of proceeds of debt securities issued with detachable stock purchase warrants.",
        "label": "Adjustments to Additional Paid in Capital, Warrant Issued",
        "terseLabel": "Warrant liability"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalWarrantIssued",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r86"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The sum of adjustments which are added to or deducted from net income or loss, including the portion attributable to noncontrolling interest, to reflect cash provided by or used in operating activities, in accordance with the indirect cash flow method.",
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Total adjustments"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Adjustments to reconcile net loss to net cash used in (provided by) operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r245",
      "r268",
      "r276"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.",
        "label": "Share-based Payment Arrangement, Expense",
        "terseLabel": "Stock-based compensation expense"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r26",
      "r161",
      "r167"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "terseLabel": "Trade accounts receivable, less allowances"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfDeferredLoanOriginationFeesNet": {
     "auth_ref": [
      "r85",
      "r163"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 8.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net increase(decrease) in interest income during the period representing the allocation of deferred loan origination fees less deferred loan origination costs using the effective interest method over the term of the debt arrangement to which they pertain taking into account the effect of prepayments.",
        "label": "Amortization of Deferred Loan Origination Fees, Net",
        "negatedLabel": "Amortization of loan discounts and origination fees"
       }
      }
     },
     "localname": "AmortizationOfDeferredLoanOriginationFeesNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r119"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.",
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "terseLabel": "Securities excluded from net loss per share calculation (in shares)"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r96",
      "r144",
      "r147",
      "r153",
      "r165",
      "r297",
      "r301",
      "r320",
      "r364",
      "r377"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets [Abstract]",
        "terseLabel": "ASSETS"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r4",
      "r5",
      "r50",
      "r96",
      "r165",
      "r297",
      "r301",
      "r320"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets, Current",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "terseLabel": "Current assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r246",
      "r270"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]",
        "terseLabel": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited",
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).",
        "label": "Basis of Accounting, Policy [Policy Text Block]",
        "terseLabel": "Basis of presentation"
       }
      }
     },
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashAndCashEquivalentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents [Abstract]",
        "terseLabel": "Classification of cash and restricted cash:"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r1",
      "r34",
      "r87"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "terseLabel": "Cash"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r82",
      "r87",
      "r91"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents",
        "periodEndLabel": "Cash and restricted cash, end of period",
        "periodStartLabel": "Cash and restricted cash, beginning of period",
        "totalLabel": "Cash and restricted cash"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r82",
      "r321"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Net (decrease) increase in cash and restricted cash"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [
      "r95",
      "r96",
      "r113",
      "r114",
      "r115",
      "r117",
      "r118",
      "r122",
      "r123",
      "r124",
      "r165",
      "r320"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock.",
        "label": "Class of Stock [Domain]",
        "terseLabel": "Class of Stock [Domain]"
       }
      }
     },
     "localname": "ClassOfStockDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ClassOfStockLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Class of Stock [Line Items]",
        "terseLabel": "Class of Stock [Line Items]"
       }
      }
     },
     "localname": "ClassOfStockLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1": {
     "auth_ref": [
      "r212"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Exercise price per share or per unit of warrants or rights outstanding.",
        "label": "Class of Warrant or Right, Exercise Price of Warrants or Rights",
        "terseLabel": "Exercise price of common stock (in dollars per share)",
        "verboseLabel": "Exercise Price (in dollars per share)"
       }
      }
     },
     "localname": "ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityWarrantsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]",
        "terseLabel": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r186",
      "r187",
      "r188",
      "r190"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "terseLabel": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r101",
      "r102"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]",
        "terseLabel": "Common Stock"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited",
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r18"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share",
        "terseLabel": "Common stock, par value (in usd per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/NatureofOperationsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityStockSplitDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r18"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "Common Stock, Shares Authorized",
        "terseLabel": "Common stock, authorized (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/NatureofOperationsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityStockSplitDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r18"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.",
        "label": "Common Stock, Shares, Issued",
        "terseLabel": "Common stock, issued (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r18",
      "r211"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "Common Stock, Shares, Outstanding",
        "terseLabel": "Common stock, outstanding (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r18"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Common Stock, Value, Issued",
        "terseLabel": "Common stock, par value $0.0001 per share"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r58",
      "r60",
      "r61",
      "r65",
      "r370",
      "r384"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "totalLabel": "Comprehensive loss"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]",
        "terseLabel": "Other comprehensive income:"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTaxAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r134",
      "r135",
      "r158",
      "r317",
      "r318"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.",
        "label": "Concentration Risk Benchmark [Domain]",
        "terseLabel": "Concentration Risk Benchmark [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r134",
      "r135",
      "r158",
      "r317",
      "r318",
      "r397"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]",
        "terseLabel": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r134",
      "r135",
      "r158",
      "r317",
      "r318",
      "r397"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.",
        "label": "Concentration Risk Type [Axis]",
        "terseLabel": "Concentration Risk Type [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskCreditRisk": {
     "auth_ref": [
      "r128",
      "r375"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for credit risk.",
        "label": "Concentration Risk, Credit Risk, Policy [Policy Text Block]",
        "terseLabel": "Certain risks and concentrations"
       }
      }
     },
     "localname": "ConcentrationRiskCreditRisk",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Concentration Risk [Line Items]",
        "terseLabel": "Concentration Risk [Line Items]"
       }
      }
     },
     "localname": "ConcentrationRiskLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r134",
      "r135",
      "r158",
      "r317",
      "r318"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.",
        "label": "Concentration Risk, Percentage",
        "terseLabel": "Concentration risk"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTable": {
     "auth_ref": [
      "r131",
      "r134",
      "r135",
      "r136",
      "r317",
      "r319"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.",
        "label": "Concentration Risk [Table]",
        "terseLabel": "Concentration Risk [Table]"
       }
      }
     },
     "localname": "ConcentrationRiskTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r134",
      "r135",
      "r158",
      "r317",
      "r318"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration.",
        "label": "Concentration Risk Type [Domain]",
        "terseLabel": "Concentration Risk Type [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConstructionInProgressMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.",
        "label": "Construction in Progress [Member]",
        "terseLabel": "Projects in progress"
       }
      }
     },
     "localname": "ConstructionInProgressMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "auth_ref": [
      "r223",
      "r224",
      "r226"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 13.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.",
        "label": "Contract with Customer, Liability, Current",
        "terseLabel": "Deferred revenue"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConversionOfStockSharesConverted1": {
     "auth_ref": [
      "r88",
      "r89",
      "r90"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares converted in a noncash (or part noncash) transaction. Noncash is defined as transactions during a period that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Conversion of Stock, Shares Converted",
        "terseLabel": "Preferred stock converted to common stock (in shares)"
       }
      }
     },
     "localname": "ConversionOfStockSharesConverted1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ConvertibleDebtMember": {
     "auth_ref": [
      "r199"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Borrowing which can be exchanged for a specified number of another security at the option of the issuer or the holder, for example, but not limited to, the entity's common stock.",
        "label": "Convertible Debt [Member]",
        "terseLabel": "Convertible Debt"
       }
      }
     },
     "localname": "ConvertibleDebtMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConvertiblePreferredStockMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Preferred stock that may be exchanged into common shares or other types of securities at the owner's option.",
        "label": "Convertible Preferred Stock [Member]",
        "terseLabel": "Series A Convertible Preferred Stock",
        "verboseLabel": "Convertible securities"
       }
      }
     },
     "localname": "ConvertiblePreferredStockMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConvertiblePreferredStockSharesIssuedUponConversion": {
     "auth_ref": [
      "r16",
      "r17",
      "r212",
      "r215"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued for each share of convertible preferred stock that is converted.",
        "label": "Convertible Preferred Stock, Shares Issued upon Conversion",
        "terseLabel": "Common stock issued upon preferred stock conversion (in shares)"
       }
      }
     },
     "localname": "ConvertiblePreferredStockSharesIssuedUponConversion",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r69",
      "r362"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.",
        "label": "Cost of Goods and Services Sold",
        "terseLabel": "Cost of sales"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing cost of sales.",
        "label": "Cost of Sales [Member]",
        "terseLabel": "Cost of sales"
       }
      }
     },
     "localname": "CostOfSalesMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CreditFacilityAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.",
        "label": "Credit Facility [Axis]",
        "terseLabel": "Credit Facility [Axis]"
       }
      }
     },
     "localname": "CreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CreditFacilityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.",
        "label": "Credit Facility [Domain]",
        "terseLabel": "Credit Facility [Domain]"
       }
      }
     },
     "localname": "CreditFacilityDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r132",
      "r158"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.",
        "label": "Customer Concentration Risk [Member]",
        "terseLabel": "Customer concentration risk"
       }
      }
     },
     "localname": "CustomerConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtConversionOriginalDebtInterestRateOfDebt": {
     "auth_ref": [
      "r88",
      "r90"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The rate of interest that was being paid on the original debt issue that is being converted in the noncash (or part noncash) transaction. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Debt Conversion, Original Debt, Interest Rate of Debt",
        "terseLabel": "Interest rate on convertible notes"
       }
      }
     },
     "localname": "DebtConversionOriginalDebtInterestRateOfDebt",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]",
        "terseLabel": "Debt Disclosure [Abstract]"
       }
      }
     },
     "localname": "DebtDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r206"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.",
        "label": "Debt Disclosure [Text Block]",
        "terseLabel": "Debt"
       }
      }
     },
     "localname": "DebtDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/Debt"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r13",
      "r14",
      "r15",
      "r365",
      "r366",
      "r376"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.",
        "label": "Debt Instrument [Axis]",
        "terseLabel": "Debt Instrument [Axis]"
       }
      }
     },
     "localname": "DebtInstrumentAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.",
        "label": "Debt Instrument, Basis Spread on Variable Rate",
        "terseLabel": "Margin added to borrowing rate"
       }
      }
     },
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentCarryingAmount": {
     "auth_ref": [
      "r15",
      "r201",
      "r366",
      "r376"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.",
        "label": "Long-term Debt, Gross",
        "terseLabel": "Total liability, net of discount and financing fees"
       }
      }
     },
     "localname": "DebtInstrumentCarryingAmount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentConvertibleConversionPrice1": {
     "auth_ref": [
      "r203"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The price per share of the conversion feature embedded in the debt instrument.",
        "label": "Debt Instrument, Convertible, Conversion Price",
        "terseLabel": "Conversion rate (in dollars per share)"
       }
      }
     },
     "localname": "DebtInstrumentConvertibleConversionPrice1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "auth_ref": [
      "r331",
      "r333"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face (par) amount of debt instrument at time of issuance.",
        "label": "Debt Instrument, Face Amount",
        "terseLabel": "Principal amount"
       }
      }
     },
     "localname": "DebtInstrumentFaceAmount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentFeeAmount": {
     "auth_ref": [
      "r44"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the fee that accompanies borrowing money under the debt instrument.",
        "label": "Debt Instrument, Fee Amount",
        "terseLabel": "Termination fee"
       }
      }
     },
     "localname": "DebtInstrumentFeeAmount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r43"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "terseLabel": "Interest rate"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Debt Instrument [Line Items]",
        "terseLabel": "Debt Instrument [Line Items]"
       }
      }
     },
     "localname": "DebtInstrumentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r45"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.",
        "label": "Debt Instrument, Name [Domain]",
        "terseLabel": "Debt Instrument, Name [Domain]"
       }
      }
     },
     "localname": "DebtInstrumentNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentRedemptionPeriodAxis": {
     "auth_ref": [
      "r373"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information about timing of debt redemption features under terms of the debt agreement.",
        "label": "Debt Instrument, Redemption, Period [Axis]",
        "terseLabel": "Debt Instrument, Redemption, Period [Axis]"
       }
      }
     },
     "localname": "DebtInstrumentRedemptionPeriodAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentRedemptionPeriodDomain": {
     "auth_ref": [
      "r373"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period as defined under terms of the debt agreement for debt redemption features.",
        "label": "Debt Instrument, Redemption, Period [Domain]",
        "terseLabel": "Debt Instrument, Redemption, Period [Domain]"
       }
      }
     },
     "localname": "DebtInstrumentRedemptionPeriodDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentRedemptionPeriodOneMember": {
     "auth_ref": [
      "r373"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period one representing most current period of debt redemption features under terms of the debt agreement.",
        "label": "Debt Instrument, Redemption, Period One [Member]",
        "terseLabel": "Debt Instrument, Redemption, Period One"
       }
      }
     },
     "localname": "DebtInstrumentRedemptionPeriodOneMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentRedemptionPeriodTwoMember": {
     "auth_ref": [
      "r373"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period two representing second most current period of debt redemption features under terms of the debt agreement.",
        "label": "Debt Instrument, Redemption, Period Two [Member]",
        "terseLabel": "Debt Instrument, Redemption, Period Two"
       }
      }
     },
     "localname": "DebtInstrumentRedemptionPeriodTwoMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentTable": {
     "auth_ref": [
      "r45",
      "r98",
      "r212",
      "r216",
      "r217",
      "r218",
      "r330",
      "r331",
      "r333",
      "r374"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table or schedule providing information pertaining to long-term debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.",
        "label": "Schedule of Long-term Debt Instruments [Table]",
        "terseLabel": "Schedule of Long-term Debt Instruments [Table]"
       }
      }
     },
     "localname": "DebtInstrumentTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentUnamortizedDiscount": {
     "auth_ref": [
      "r330",
      "r333"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of debt discount.",
        "label": "Debt Instrument, Unamortized Discount",
        "terseLabel": "Issue discount"
       }
      }
     },
     "localname": "DebtInstrumentUnamortizedDiscount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet": {
     "auth_ref": [
      "r202",
      "r332"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of unamortized debt discount (premium) and debt issuance costs.",
        "label": "Debt Instrument, Unamortized Discount (Premium) and Debt Issuance Costs, Net",
        "terseLabel": "Unamortized issuance costs at date of issuance"
       }
      }
     },
     "localname": "DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentUnamortizedPremium": {
     "auth_ref": [
      "r330",
      "r333"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of debt premium.",
        "label": "Debt Instrument, Unamortized Premium",
        "terseLabel": "Issue discount"
       }
      }
     },
     "localname": "DebtInstrumentUnamortizedPremium",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredFinanceCostsGross": {
     "auth_ref": [
      "r332"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.",
        "label": "Debt Issuance Costs, Gross",
        "terseLabel": "Unamortized debt issuance costs"
       }
      }
     },
     "localname": "DeferredFinanceCostsGross",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": {
     "auth_ref": [
      "r285",
      "r286"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards",
        "terseLabel": "Deferred tax assets, operating loss carry-forwards"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards that are subject to expiration dates.",
        "label": "Deferred Tax Assets, Operating Loss Carryforwards, Subject to Expiration",
        "terseLabel": "Operating loss, subject to expiration"
       }
      }
     },
     "localname": "DeferredTaxAssetsOperatingLossCarryforwardsSubjectToExpiration",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepositsAssetsCurrent": {
     "auth_ref": [
      "r37"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value of amounts transferred to third parties for security purposes that are expected to be returned or applied towards payment within one year or during the operating cycle, if shorter.",
        "label": "Deposits Assets, Current",
        "terseLabel": "Short-term deposits"
       }
      }
     },
     "localname": "DepositsAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r85",
      "r172"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.",
        "label": "Depreciation",
        "terseLabel": "Depreciation"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r225"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table Text Block]",
        "terseLabel": "Disaggregation of revenue"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Payment Arrangement [Abstract]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DomesticCountryMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile.",
        "label": "Domestic Tax Authority [Member]",
        "terseLabel": "U.S. Federal, State and Local tax authorities"
       }
      }
     },
     "localname": "DomesticCountryMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Abstract]",
        "verboseLabel": "Numerator:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasicAndDilutedAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Basic and Diluted [Abstract]",
        "terseLabel": "Net loss per common share - basic and diluted",
        "verboseLabel": "Denominator:"
       }
      }
     },
     "localname": "EarningsPerShareBasicAndDilutedAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "auth_ref": [
      "r92",
      "r119",
      "r120"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.",
        "label": "Earnings Per Share, Policy [Policy Text Block]",
        "terseLabel": "Net loss per share"
       }
      }
     },
     "localname": "EarningsPerSharePolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]",
        "terseLabel": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r269"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount",
        "terseLabel": "Unearned stock-based compensation"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r269"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition",
        "terseLabel": "Unearned compensation expected to be recognized, period"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Revenue from External Customer [Line Items]",
        "terseLabel": "Revenue from External Customer [Line Items]"
       }
      }
     },
     "localname": "EntityWideInformationRevenueFromExternalCustomerLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tangible personal property used to produce goods and services.",
        "label": "Equipment [Member]",
        "terseLabel": "Equipment"
       }
      }
     },
     "localname": "EquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r101",
      "r102",
      "r103",
      "r105",
      "r110",
      "r112",
      "r121",
      "r166",
      "r211",
      "r219",
      "r271",
      "r272",
      "r273",
      "r287",
      "r288",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r391",
      "r392",
      "r393"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.",
        "label": "Equity Component [Domain]",
        "terseLabel": "Equity Component [Domain]"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited",
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FacilityClosingMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Closing of a facility associated with exit from or disposal of business activities or restructurings pursuant to a plan.",
        "label": "Facility Closing [Member]",
        "terseLabel": "Restructuring liability"
       }
      }
     },
     "localname": "FacilityClosingMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueAdjustmentOfWarrants": {
     "auth_ref": [
      "r85",
      "r207"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 4.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": 4.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (income) related to adjustment to fair value of warrant liability.",
        "label": "Fair Value Adjustment of Warrants",
        "terseLabel": "Change in fair value of warrant liabilities",
        "verboseLabel": "Gain from change in fair value of warrants"
       }
      }
     },
     "localname": "FairValueAdjustmentOfWarrants",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock": {
     "auth_ref": [
      "r305"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of input and valuation technique used to measure fair value and change in valuation approach and technique for each separate class of asset and liability measured on recurring and nonrecurring basis.",
        "label": "Fair Value Measurement Inputs and Valuation Techniques [Table Text Block]",
        "terseLabel": "Schedule of valuation assumptions"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]",
        "terseLabel": "Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]"
       }
      }
     },
     "localname": "FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByBalanceSheetGroupingTable": {
     "auth_ref": [
      "r303",
      "r315",
      "r316"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities.",
        "label": "Fair Value, by Balance Sheet Grouping [Table]",
        "terseLabel": "Fair Value, by Balance Sheet Grouping [Table]"
       }
      }
     },
     "localname": "FairValueByBalanceSheetGroupingTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "auth_ref": [
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r240",
      "r304",
      "r352",
      "r353",
      "r354"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.",
        "label": "Fair Value Hierarchy and NAV [Axis]",
        "terseLabel": "Fair Value Hierarchy and NAV [Axis]"
       }
      }
     },
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByMeasurementFrequencyAxis": {
     "auth_ref": [
      "r303",
      "r304",
      "r306",
      "r307",
      "r312"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by measurement frequency.",
        "label": "Measurement Frequency [Axis]",
        "terseLabel": "Measurement Frequency [Axis]"
       }
      }
     },
     "localname": "FairValueByMeasurementFrequencyAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "auth_ref": [
      "r233",
      "r234",
      "r239",
      "r240",
      "r304",
      "r352"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.",
        "label": "Fair Value, Inputs, Level 1 [Member]",
        "terseLabel": "Quoted Prices in Active Markets for Identical Assets (Level 1)"
       }
      }
     },
     "localname": "FairValueInputsLevel1Member",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "auth_ref": [
      "r233",
      "r234",
      "r239",
      "r240",
      "r304",
      "r353"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets.",
        "label": "Fair Value, Inputs, Level 2 [Member]",
        "terseLabel": "Significant Other Observable Inputs (Level 2)"
       }
      }
     },
     "localname": "FairValueInputsLevel2Member",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "auth_ref": [
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r240",
      "r304",
      "r354"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Inputs, Level 3 [Member]",
        "terseLabel": "Significant Unobservable Inputs (Level 3)"
       }
      }
     },
     "localname": "FairValueInputsLevel3Member",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]",
        "terseLabel": "Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Roll Forward]"
       }
      }
     },
     "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock": {
     "auth_ref": [
      "r308",
      "r311"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the fair value measurement of liabilities using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets), and gains or losses recognized in other comprehensive income (loss) and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs) by class of liability.",
        "label": "Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]",
        "terseLabel": "Level 3 Fair Value Reconciliation"
       }
      }
     },
     "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueMeasurementFrequencyDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Measurement frequency.",
        "label": "Measurement Frequency [Domain]",
        "terseLabel": "Measurement Frequency [Domain]"
       }
      }
     },
     "localname": "FairValueMeasurementFrequencyDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues": {
     "auth_ref": [
      "r309"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of issuances of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Liability, Issuances",
        "terseLabel": "Issuance of warrants, January 2020"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityIssues",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "auth_ref": [
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r240",
      "r352",
      "r353",
      "r354"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.",
        "label": "Fair Value Hierarchy and NAV [Domain]",
        "terseLabel": "Fair Value Hierarchy and NAV [Domain]"
       }
      }
     },
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementsRecurringMember": {
     "auth_ref": [
      "r310",
      "r312"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value.",
        "label": "Fair Value, Recurring [Member]",
        "terseLabel": "Fair Value, Recurring"
       }
      }
     },
     "localname": "FairValueMeasurementsRecurringMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r92",
      "r313",
      "r314"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments.",
        "label": "Fair Value of Financial Instruments, Policy [Policy Text Block]",
        "terseLabel": "Financial Instruments"
       }
      }
     },
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Lease, Liability, Payment, Due, Rolling Maturity [Abstract]",
        "terseLabel": "Finance Lease"
       }
      }
     },
     "localname": "FinanceLeaseLiabilitiesPaymentsRollingMaturityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FinanceLeaseLiability": {
     "auth_ref": [
      "r335",
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease.",
        "label": "Finance Lease, Liability",
        "terseLabel": "Total lease obligations",
        "verboseLabel": "Finance lease liabilities"
       }
      }
     },
     "localname": "FinanceLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails",
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityCurrent": {
     "auth_ref": [
      "r335"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 10.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current.",
        "label": "Finance Lease, Liability, Current",
        "terseLabel": "Finance lease liabilities"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r344"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of finance lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to finance lease liability recognized in statement of financial position.",
        "label": "Finance Lease, Liability, Fiscal Year Maturity [Table Text Block]",
        "terseLabel": "Schedule of Future Maturities of Finance Lease Liabilities"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r335"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent.",
        "label": "Finance Lease, Liability, Noncurrent",
        "terseLabel": "Finance lease liabilities, net of current portion"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease.",
        "label": "Finance Lease, Liability, Payment, Due",
        "totalLabel": "Total future undiscounted lease payments"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 4.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due after fifth fiscal year following latest statement of financial position date. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Finance Lease, Liability, Payments, Due in Next Rolling Twelve Months",
        "terseLabel": "April 2021 to March 2022"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueInNextRollingTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFive": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 3.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in fifth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Finance Lease, Liability, Payments, Due in Rolling Year Five",
        "terseLabel": "April 2025 to March 2026"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueInRollingYearFive",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearFour": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 2.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in fourth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Finance Lease, Liability, Payments, Due in Rolling Year Four",
        "terseLabel": "April 2024 to March 2025"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueInRollingYearFour",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearThree": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 1.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in third rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Finance Lease, Liability, Payments, Due in Rolling Year Three",
        "terseLabel": "April 2023 to March 2024"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueInRollingYearThree",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueInRollingYearTwo": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 5.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in second rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Finance Lease, Liability, Payments, Due in Rolling Year Two",
        "terseLabel": "April 2022 to March 2023"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueInRollingYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease.",
        "label": "Finance Lease, Liability, Undiscounted Excess Amount",
        "negatedLabel": "Less imputed interest"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeasePrincipalPayments": {
     "auth_ref": [
      "r336",
      "r341"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow for principal payment on finance lease.",
        "label": "Finance Lease, Principal Payments",
        "negatedLabel": "Principal payments under finance lease obligations",
        "terseLabel": "Financing cash flows from finance leases"
       }
      }
     },
     "localname": "FinanceLeasePrincipalPayments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAsset": {
     "auth_ref": [
      "r334"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of right-of-use asset from finance lease.",
        "label": "Finance Lease, Right-of-Use Asset, after Accumulated Amortization",
        "totalLabel": "Finance lease assets, net"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r342",
      "r345"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Finance Lease, Weighted Average Remaining Lease Term",
        "terseLabel": "Finance lease, weighted average remaining lease term"
       }
      }
     },
     "localname": "FinanceLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.",
        "label": "Furniture and Fixtures [Member]",
        "terseLabel": "Furniture and fixtures"
       }
      }
     },
     "localname": "FurnitureAndFixturesMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GainsLossesOnExtinguishmentOfDebt": {
     "auth_ref": [
      "r85",
      "r204",
      "r205"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.",
        "label": "Gain (Loss) on Extinguishment of Debt",
        "negatedTerseLabel": "Gain on forgiveness of PPP loan",
        "terseLabel": "Gain on forgiveness of PPP loan"
       }
      }
     },
     "localname": "GainsLossesOnExtinguishmentOfDebt",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited",
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeographicConcentrationRiskMember": {
     "auth_ref": [
      "r133"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the percentage that a specified dollar value on the balance sheet or income statement in the period from one or more specified geographic areas is to a corresponding consolidated, segment, or product line amount. Risk is the materially adverse effects of economic decline or antagonistic political actions resulting in loss of assets, sales volume, labor supply, or source of materials and supplies in a US state or a specified country, continent, or region such as EMEA (Europe, Middle East, Africa).",
        "label": "Geographic Concentration Risk [Member]",
        "terseLabel": "Geographic concentration risk"
       }
      }
     },
     "localname": "GeographicConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r67",
      "r96",
      "r144",
      "r146",
      "r149",
      "r152",
      "r154",
      "r165",
      "r320"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.",
        "label": "Gross Profit",
        "totalLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentEffectsOnEarningsPerShareLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Impairment Effects on Earnings Per Share [Line Items]",
        "terseLabel": "Impairment Effects on Earnings Per Share [Line Items]"
       }
      }
     },
     "localname": "ImpairmentEffectsOnEarningsPerShareLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ImpairmentEffectsOnEarningsPerShareTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about the effects of asset impairment charge on per share or per unit basis.",
        "label": "Impairment Effects on Earnings Per Share [Table]",
        "terseLabel": "Impairment Effects on Earnings Per Share [Table]"
       }
      }
     },
     "localname": "ImpairmentEffectsOnEarningsPerShareTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperations": {
     "auth_ref": [
      "r68",
      "r86",
      "r106",
      "r107",
      "r108",
      "r109",
      "r116",
      "r118",
      "r294"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of income (loss) from continuing operations attributable to the parent.",
        "label": "Income (Loss) from Continuing Operations, Net of Tax, Attributable to Parent",
        "terseLabel": "Net loss",
        "verboseLabel": "Net loss from continuing operations"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsPerBasicAndDilutedShare": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) from continuing operations per each basic and diluted share of common stock or unit when the per share amount is the same for both basic and diluted shares.",
        "label": "Income (Loss) from Continuing Operations, Per Basic and Diluted Share",
        "terseLabel": "Net loss (in usd per share)"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsPerBasicAndDilutedShare",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]",
        "terseLabel": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r176"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location in the income statement.",
        "label": "Income Statement Location [Axis]",
        "terseLabel": "Income Statement Location [Axis]"
       }
      }
     },
     "localname": "IncomeStatementLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in the income statement.",
        "label": "Income Statement Location [Domain]",
        "terseLabel": "Income Statement Location [Domain]"
       }
      }
     },
     "localname": "IncomeStatementLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "auth_ref": [
      "r280"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by tax jurisdiction.",
        "label": "Income Tax Authority [Axis]",
        "terseLabel": "Income Tax Authority [Axis]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxAuthorityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes.",
        "label": "Income Tax Authority [Domain]",
        "terseLabel": "Income Tax Authority [Domain]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]",
        "terseLabel": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r279",
      "r281",
      "r282",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.",
        "label": "Income Tax Disclosure [Text Block]",
        "terseLabel": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r84"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 13.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.",
        "label": "Increase (Decrease) in Accounts Payable",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r84"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 9.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.",
        "label": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilities": {
     "auth_ref": [
      "r84"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 14.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.",
        "label": "Increase (Decrease) in Accrued Liabilities",
        "terseLabel": "Accrued and other liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInDeferredRevenue": {
     "auth_ref": [
      "r84"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 15.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable.",
        "label": "Increase (Decrease) in Deferred Revenue",
        "terseLabel": "Deferred revenue"
       }
      }
     },
     "localname": "IncreaseDecreaseInDeferredRevenue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInDepositOtherAssets": {
     "auth_ref": [
      "r84"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 11.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in moneys or securities given as security including, but not limited to, contract, escrow, or earnest money deposits, retainage (if applicable), deposits with clearing organizations and others, collateral, or margin deposits.",
        "label": "Increase (Decrease) in Deposit Assets",
        "negatedTerseLabel": "Short-term deposits"
       }
      }
     },
     "localname": "IncreaseDecreaseInDepositOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r84"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 10.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.",
        "label": "Increase (Decrease) in Inventories",
        "negatedTerseLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "terseLabel": "Changes in operating assets and liabilities (Sources / (Uses) of cash):"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "auth_ref": [
      "r84"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 12.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.",
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "negatedTerseLabel": "Prepaid and other assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]",
        "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]"
       }
      }
     },
     "localname": "IncreaseDecreaseInStockholdersEquityRollForward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r62",
      "r143",
      "r329",
      "r332",
      "r371"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.",
        "label": "Interest Expense",
        "terseLabel": "Interest expense"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Abstract]",
        "terseLabel": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "localname": "InventoryDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r171"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.",
        "label": "Inventory Disclosure [Text Block]",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/Inventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "auth_ref": [
      "r27",
      "r170"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.",
        "label": "Inventory, Finished Goods, Net of Reserves",
        "terseLabel": "Finished goods"
       }
      }
     },
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r2",
      "r49"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventory, Net",
        "terseLabel": "Inventories, net",
        "totalLabel": "Inventories, net"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "auth_ref": [
      "r28",
      "r170"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.",
        "label": "Inventory, Raw Materials, Net of Reserves",
        "terseLabel": "Raw materials"
       }
      }
     },
     "localname": "InventoryRawMaterialsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesInventoriesNetDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWriteDown": {
     "auth_ref": [
      "r169"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 6.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of loss from reductions in inventory due to subsequent measurement adjustments, including, but not limited to, physical deterioration, obsolescence, or changes in price levels.",
        "label": "Inventory Write-down",
        "terseLabel": "Provision for slow-moving and obsolete inventories"
       }
      }
     },
     "localname": "InventoryWriteDown",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r343",
      "r345"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease cost recognized by lessee for lease contract.",
        "label": "Lease, Cost",
        "totalLabel": "Total lease cost, net"
       }
      }
     },
     "localname": "LeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r343"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.",
        "label": "Lease, Cost [Table Text Block]",
        "terseLabel": "Components of Lease Cost and Supplemental Cash Flow Information"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "auth_ref": [
      "r173"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additions or improvements to assets held under a lease arrangement.",
        "label": "Leasehold Improvements [Member]",
        "terseLabel": "Leasehold improvements"
       }
      }
     },
     "localname": "LeaseholdImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]",
        "terseLabel": "Leases [Abstract]"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LeasesOperatingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases, Operating [Abstract]",
        "terseLabel": "Operating Leases"
       }
      }
     },
     "localname": "LeasesOperatingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeFinanceLeaseDescriptionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Finance Lease, Description [Abstract]",
        "terseLabel": "Finance Leases"
       }
      }
     },
     "localname": "LesseeFinanceLeaseDescriptionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeFinanceLeasesTextBlock": {
     "auth_ref": [
      "r346"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for finance leases of lessee. Includes, but is not limited to, description of lessee's finance lease and maturity analysis of finance lease liability.",
        "label": "Lessee, Finance Leases [Text Block]",
        "terseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeFinanceLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseDiscountRate": {
     "auth_ref": [
      "r338"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Discount rate used by lessee to determine present value of operating lease payments.",
        "label": "Lessee, Operating Lease, Discount Rate",
        "terseLabel": "Operating lease, discount rate"
       }
      }
     },
     "localname": "LesseeOperatingLeaseDiscountRate",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r344"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.",
        "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]",
        "terseLabel": "Schedule of Future Maturities of Operating Lease Liabilities"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.",
        "label": "Lessee, Operating Lease, Liability, to be Paid",
        "totalLabel": "Total future undiscounted lease payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fifth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due in Rolling Year Five",
        "terseLabel": "April 2025 to March 2026"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFive",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 5.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fourth rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due in Rolling Year Four",
        "terseLabel": "April 2024 to March 2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearFour",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 3.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in third rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due in Rolling Year Three",
        "terseLabel": "April 2023 to March 2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearThree",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 4.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in second rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due in Rolling Year Two",
        "terseLabel": "April 2022 to March 2023"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueInRollingYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in next rolling twelve months following latest statement of financial position date. For interim and annual periods when interim periods are reported on a rolling approach, from latest statement of financial position date.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due Next Rolling Twelve Months",
        "terseLabel": "April 2021 to March 2022"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextRollingTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r344"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "negatedLabel": "Less imputed interest"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r346"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.",
        "label": "Lessee, Operating Leases [Text Block]",
        "terseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsRollingMaturityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessor, Operating Lease, Payments, Rolling Maturity [Abstract]",
        "terseLabel": "Restructured Leases Sub-lease Payments"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsRollingMaturityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceived": {
     "auth_ref": [
      "r347"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor for operating lease.",
        "label": "Lessor, Operating Lease, Payments to be Received",
        "negatedTotalLabel": "Total future undiscounted lease payments"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceived",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths": {
     "auth_ref": [
      "r347"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 1.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor in next rolling twelve months following latest statement of financial position date for operating lease. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Lessor, Operating Lease, Payments to be Received, Next Rolling Twelve Months",
        "negatedTerseLabel": "April 2021 to March 2022"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedNextRollingTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFive": {
     "auth_ref": [
      "r347"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 5.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor in fifth rolling twelve months following latest statement of financial position date for operating lease. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Lessor, Operating Lease, Payments to be Received, Rolling Year Five",
        "negatedTerseLabel": "April 2025 to March 2026"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedRollingYearFive",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearFour": {
     "auth_ref": [
      "r347"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 4.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor in fourth rolling twelve months following latest statement of financial position date for operating lease. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Lessor, Operating Lease, Payments to be Received, Rolling Year Four",
        "negatedTerseLabel": "April 2024 to March 2025"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedRollingYearFour",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearThree": {
     "auth_ref": [
      "r347"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 3.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor in third rolling twelve months following latest statement of financial position date for operating lease. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Lessor, Operating Lease, Payments to be Received, Rolling Year Three",
        "negatedTerseLabel": "April 2023 to March 2024"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedRollingYearThree",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo": {
     "auth_ref": [
      "r347"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails_1": {
       "order": 2.0,
       "parentTag": "us-gaap_LessorOperatingLeasePaymentsToBeReceived",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease payments to be received by lessor in second rolling twelve months following latest statement of financial position date for operating lease. For interim and annual periods when interim periods are reported on rolling approach, from latest statement of financial position date.",
        "label": "Lessor, Operating Lease, Payments to be Received, Rolling Year Two",
        "negatedTerseLabel": "April 2022 to March 2023"
       }
      }
     },
     "localname": "LessorOperatingLeasePaymentsToBeReceivedRollingYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r40",
      "r96",
      "r148",
      "r165",
      "r298",
      "r301",
      "r302",
      "r320"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.",
        "label": "Liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities [Abstract]",
        "terseLabel": "LIABILITIES"
       }
      }
     },
     "localname": "LiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r25",
      "r96",
      "r165",
      "r320",
      "r367",
      "r381"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "Liabilities and Equity",
        "totalLabel": "Total liabilities and stockholders' equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r42",
      "r96",
      "r165",
      "r298",
      "r301",
      "r302",
      "r320"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.",
        "label": "Liabilities, Current",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "terseLabel": "Current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityCommitmentFeePercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The fee, expressed as a percentage of the line of credit facility, for the line of credit facility regardless of whether the facility has been used.",
        "label": "Line of Credit Facility, Commitment Fee Percentage",
        "terseLabel": "Annual facility fee"
       }
      }
     },
     "localname": "LineOfCreditFacilityCommitmentFeePercentage",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LineOfCreditFacilityExpirationPeriod": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period remaining on line of credit facility before it terminates, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Line of Credit Facility, Expiration Period",
        "terseLabel": "Line of credit term (in years)"
       }
      }
     },
     "localname": "LineOfCreditFacilityExpirationPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_LineOfCreditFacilityLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Line of Credit Facility [Line Items]",
        "terseLabel": "Line of Credit Facility [Line Items]"
       }
      }
     },
     "localname": "LineOfCreditFacilityLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r39"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.",
        "label": "Line of Credit Facility, Maximum Borrowing Capacity",
        "terseLabel": "Maximum borrowing capacity on line of credit"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityTable": {
     "auth_ref": [
      "r39",
      "r98"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line.",
        "label": "Line of Credit Facility [Table]",
        "terseLabel": "Line of Credit Facility [Table]"
       }
      }
     },
     "localname": "LineOfCreditFacilityTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LinesOfCreditCurrent": {
     "auth_ref": [
      "r13",
      "r365"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 12.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The carrying value as of the balance sheet date of the current portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.",
        "label": "Line of Credit, Current",
        "terseLabel": "Credit line borrowings, net of loan origination fees"
       }
      }
     },
     "localname": "LinesOfCreditCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LondonInterbankOfferedRateLIBORMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate at which a bank borrows funds from other banks in the London interbank market.",
        "label": "London Interbank Offered Rate (LIBOR) [Member]",
        "terseLabel": "London Interbank Offered Rate (LIBOR)"
       }
      }
     },
     "localname": "LondonInterbankOfferedRateLIBORMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LongTermPurchaseCommitmentAmount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The minimum amount the entity agreed to spend under the long-term purchase commitment.",
        "label": "Long-term Purchase Commitment, Amount",
        "terseLabel": "Purchase commitment"
       }
      }
     },
     "localname": "LongTermPurchaseCommitmentAmount",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermPurchaseCommitmentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Long-term Purchase Commitment [Line Items]",
        "terseLabel": "Long-term Purchase Commitment [Line Items]"
       }
      }
     },
     "localname": "LongTermPurchaseCommitmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongTermPurchaseCommitmentTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule setting forth key provisions of an arrangement under which the entity has agreed to purchase goods or services over a period of time greater than one year or the normal operating cycle, if longer, including the item for which expenditures will be made, minimum quantities, milestones, time period and committed amount.",
        "label": "Long-term Purchase Commitment [Table]",
        "terseLabel": "Long-term Purchase Commitment [Table]"
       }
      }
     },
     "localname": "LongTermPurchaseCommitmentTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongtermDebtTypeAxis": {
     "auth_ref": [
      "r45"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-term debt.",
        "label": "Long-term Debt, Type [Axis]",
        "terseLabel": "Long-term Debt, Type [Axis]"
       }
      }
     },
     "localname": "LongtermDebtTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongtermDebtTypeDomain": {
     "auth_ref": [
      "r45",
      "r198"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.",
        "label": "Long-term Debt, Type [Domain]",
        "terseLabel": "Long-term Debt, Type [Domain]"
       }
      }
     },
     "localname": "LongtermDebtTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Movement in Standard and Extended Product Warranty Accrual, Increase (Decrease) [Roll Forward]",
        "terseLabel": "Movement in Standard and Extended Product Warranty, Increase (Decrease) [Roll Forward]"
       }
      }
     },
     "localname": "MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NatureOfOperations": {
     "auth_ref": [
      "r125",
      "r140"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.",
        "label": "Nature of Operations [Text Block]",
        "terseLabel": "Nature of Operations"
       }
      }
     },
     "localname": "NatureOfOperations",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/NatureofOperations"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.",
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "Net cash provided by financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]",
        "terseLabel": "Cash flows from financing activities (Sources / (Uses) of cash):"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.",
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Net cash used in investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]",
        "terseLabel": "Cash flows from investing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r82",
      "r83",
      "r86"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Net cash (used in) provided by operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]",
        "terseLabel": "Cash flows from operating activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r0",
      "r57",
      "r59",
      "r64",
      "r86",
      "r96",
      "r104",
      "r106",
      "r107",
      "r108",
      "r109",
      "r111",
      "r112",
      "r116",
      "r144",
      "r146",
      "r149",
      "r152",
      "r154",
      "r165",
      "r320",
      "r369",
      "r383"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      },
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net Income (Loss) Attributable to Parent",
        "terseLabel": "Net loss",
        "totalLabel": "Net loss"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.",
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]",
        "terseLabel": "Recent accounting pronouncements"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NonUsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Countries excluding the United States of America (US).",
        "label": "Non-US [Member]",
        "terseLabel": "Countries outside of the United States"
       }
      }
     },
     "localname": "NonUsMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.",
        "label": "Operating Expenses",
        "totalLabel": "Total operating expenses"
       }
      }
     },
     "localname": "OperatingExpenses",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Expenses [Abstract]",
        "terseLabel": "Operating expenses:"
       }
      }
     },
     "localname": "OperatingExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r144",
      "r146",
      "r149",
      "r152",
      "r154"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "Operating Income (Loss)",
        "totalLabel": "Loss from operations"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r339",
      "r345"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails": {
       "order": 2.0,
       "parentTag": "efoi_OperatingLeaseCostNetOfSubleaseIncome",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.",
        "label": "Operating Lease, Cost",
        "terseLabel": "Lease cost"
       }
      }
     },
     "localname": "OperatingLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Payment, Due, Rolling Maturity [Abstract]",
        "terseLabel": "Operating Leases"
       }
      }
     },
     "localname": "OperatingLeaseLiabilitiesPaymentsDueRollingMaturityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r335"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      },
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": {
       "order": 1.0,
       "parentTag": "efoi_OperatingLeaseLiabilityIncludingRestructuredLeases",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Operating Lease, Liability",
        "terseLabel": "Operating lease liabilities",
        "verboseLabel": "Total lease obligations"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofFutureMaturitiesofLeaseLiabilitiesDetails",
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r335"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 8.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Operating Lease, Liability, Current",
        "terseLabel": "Operating lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r335"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.",
        "label": "Operating Lease, Liability, Noncurrent",
        "terseLabel": "Operating lease liabilities, net of current portion"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r337",
      "r341"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "Operating Lease, Payments",
        "terseLabel": "Operating cash flows from operating leases"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r334"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": {
       "order": 1.0,
       "parentTag": "efoi_OperatingLeaseRightofUseAssetIncludingRestructuredLeases",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Operating Lease, Right-of-Use Asset",
        "terseLabel": "Operating lease right-of-use assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r342",
      "r345"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Operating Lease, Weighted Average Remaining Lease Term",
        "terseLabel": "Operating lease, weighted average remaining lease term"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r283"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.",
        "label": "Operating Loss Carryforwards",
        "terseLabel": "Operating loss carry-forwards"
       }
      }
     },
     "localname": "OperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLossCarryforwardsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Operating Loss Carryforwards [Line Items]",
        "terseLabel": "Operating Loss Carryforwards [Line Items]"
       }
      }
     },
     "localname": "OperatingLossCarryforwardsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLossCarryforwardsTable": {
     "auth_ref": [
      "r284"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting pertinent information, such as tax authority, amounts, and expiration dates, of net operating loss carryforwards, including an assessment of the likelihood of utilization.",
        "label": "Operating Loss Carryforwards [Table]",
        "terseLabel": "Operating Loss Carryforwards [Table]"
       }
      }
     },
     "localname": "OperatingLossCarryforwardsTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r6",
      "r7",
      "r8",
      "r41"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.",
        "label": "Other Accrued Liabilities, Current",
        "terseLabel": "Accrued liabilities"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": {
     "auth_ref": [
      "r295",
      "r296",
      "r299"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.",
        "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent",
        "terseLabel": "Foreign currency translation adjustments"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherDeferredCompensationArrangementsLiabilityCurrent": {
     "auth_ref": [
      "r230",
      "r231"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the liabilities, classified as other, for deferred compensation arrangements payable within one year or the operating cycle, if longer.",
        "label": "Other Deferred Compensation Arrangements, Liability, Current",
        "periodEndLabel": "Balance March 31, 2020",
        "periodStartLabel": "Balance January 1, 2020",
        "terseLabel": "Warrant liabilities"
       }
      }
     },
     "localname": "OtherDeferredCompensationArrangementsLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialAssetsandLiabilitiesMeasuredatFairValueDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesRollforwardofFairValueMeasurementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherIncomeAndExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Income and Expenses [Abstract]",
        "terseLabel": "Other expenses (income):"
       }
      }
     },
     "localname": "OtherIncomeAndExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r72"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": 5.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.",
        "label": "Other Nonoperating Income (Expense)",
        "negatedLabel": "Other expenses"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRestructuring": {
     "auth_ref": [
      "r81",
      "r179"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash payments made as the result of exit or disposal activities. Excludes payments associated with a discontinued operation or an asset retirement obligation.",
        "label": "Payments for Restructuring",
        "negatedTerseLabel": "Payments"
       }
      }
     },
     "localname": "PaymentsForRestructuring",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDebtExtinguishmentCosts": {
     "auth_ref": [
      "r79"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow for cost from early extinguishment and prepayment of debt. Includes, but is not limited to, third-party cost, premium paid, and other fee paid to lender directly for debt extinguishment or debt prepayment. Excludes accrued interest.",
        "label": "Payment for Debt Extinguishment or Debt Prepayment Cost",
        "terseLabel": "Payment to close Austin credit facility"
       }
      }
     },
     "localname": "PaymentsOfDebtExtinguishmentCosts",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfStockIssuanceCosts": {
     "auth_ref": [
      "r80"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for cost incurred directly with the issuance of an equity security.",
        "label": "Payments of Stock Issuance Costs",
        "negatedLabel": "Offering costs paid on the issuance of common stock and warrants",
        "negatedTerseLabel": "Payments of Stock Issuance Costs"
       }
      }
     },
     "localname": "PaymentsOfStockIssuanceCosts",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [
      "r77"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Payment, Tax Withholding, Share-based Payment Arrangement",
        "negatedLabel": "Common stock withheld in lieu of income tax withholding on vesting of restricted stock units"
       }
      }
     },
     "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r74"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "negatedLabel": "Acquisitions of property and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PreferredStockMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Preferred shares may provide a preferential dividend to the dividend on common stock and may take precedence over common stock in the event of a liquidation. Preferred shares typically represent an ownership interest in the company.",
        "label": "Preferred Stock [Member]",
        "terseLabel": "Preferred Stock"
       }
      }
     },
     "localname": "PreferredStockMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited",
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r17"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.",
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "terseLabel": "Preferred stock, par value (in usd per share)"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r17"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.",
        "label": "Preferred Stock, Shares Authorized",
        "terseLabel": "Preferred stock, authorized (in shares)"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r17"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.",
        "label": "Preferred Stock, Shares Issued",
        "terseLabel": "Preferred stock, issued (in shares)"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r17"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.",
        "label": "Preferred Stock, Shares Outstanding",
        "terseLabel": "Preferred stock, outstanding (in shares)"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r17"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Preferred Stock, Value, Issued",
        "terseLabel": "Preferred stock, par value $0.0001 per share"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "auth_ref": [
      "r4",
      "r32",
      "r33"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.",
        "label": "Prepaid Expense and Other Assets, Current",
        "terseLabel": "Prepaid and other current assets"
       }
      }
     },
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrimeRateMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate charged by financial institutions to their most creditworthy borrowers.",
        "label": "Prime Rate [Member]",
        "terseLabel": "Prime Rate"
       }
      }
     },
     "localname": "PrimeRateMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PrivatePlacementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A private placement is a direct offering of securities to a limited number of sophisticated investors such as insurance companies, pension funds, mezzanine funds, stock funds and trusts.",
        "label": "Private Placement [Member]",
        "terseLabel": "Placement Agent Warrants"
       }
      }
     },
     "localname": "PrivatePlacementMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfDebt": {
     "auth_ref": [
      "r76"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow during the period from additional borrowings in aggregate debt. Includes proceeds from short-term and long-term debt.",
        "label": "Proceeds from Issuance of Debt",
        "terseLabel": "Purchase price"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfDebt",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfSubordinatedLongTermDebt": {
     "auth_ref": [
      "r76"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from a borrowing where a lender is placed in a lien position behind debt having a higher priority of repayment (senior) in liquidation of the entity's assets or underlying collateral.",
        "label": "Proceeds from Issuance of Subordinated Long-term Debt",
        "terseLabel": "Proceeds from issuance of subordinated convertible promissory notes"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfSubordinatedLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfWarrants": {
     "auth_ref": [
      "r75"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from issuance of rights to purchase common shares at predetermined price (usually issued together with corporate debt).",
        "label": "Proceeds from Issuance of Warrants",
        "terseLabel": "Proceeds from issuance of warrants"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfWarrants",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOrSaleOfEquity": {
     "auth_ref": [
      "r75"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the issuance of common stock, preferred stock, treasury stock, stock options, and other types of equity.",
        "label": "Proceeds from Issuance or Sale of Equity",
        "terseLabel": "Gross proceeds"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOrSaleOfEquity",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromLoanOriginations1": {
     "auth_ref": [
      "r73"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash inflow associated with loan origination (the process when securing a mortgage for a piece of real property) or lease origination.",
        "label": "Proceeds from Loan Originations",
        "terseLabel": "Proceeds from loan origination"
       }
      }
     },
     "localname": "ProceedsFromLoanOriginations1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtPPPLoanDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromRepaymentsOfLinesOfCredit": {
     "auth_ref": [
      "r99"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net cash inflow or cash outflow from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with either short term or long term maturity that is collateralized (backed by pledge, mortgage or other lien in the entity's assets).",
        "label": "Proceeds from (Repayments of) Lines of Credit",
        "terseLabel": "Net proceeds from (payment on) credit line borrowings"
       }
      }
     },
     "localname": "ProceedsFromRepaymentsOfLinesOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromWarrantExercises": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow associated with the amount received from holders exercising their stock warrants.",
        "label": "Proceeds from Warrant Exercises",
        "terseLabel": "Proceeds from the exercise of warrants"
       }
      }
     },
     "localname": "ProceedsFromWarrantExercises",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrual": {
     "auth_ref": [
      "r195",
      "r196",
      "r368"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers.",
        "label": "Standard and Extended Product Warranty Accrual",
        "periodEndLabel": "Accrued warranty reserve at end of period",
        "periodStartLabel": "Balance at beginning of period"
       }
      }
     },
     "localname": "ProductWarrantyAccrual",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyLiabilityLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Product Warranty Liability [Line Items]",
        "terseLabel": "Product Warranty Liability [Line Items]"
       }
      }
     },
     "localname": "ProductWarrantyLiabilityLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ProductWarrantyLiabilityTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about product warranty liability, including, but not limited to, reductions in the liability for payments made under the warranty, changes in the liability for accruals related to product warranties issued, and changes in the liability for accruals related to preexisting warranties.",
        "label": "Product Warranty Liability [Table]",
        "terseLabel": "Product Warranty Liability [Table]"
       }
      }
     },
     "localname": "ProductWarrantyLiabilityTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesProductWarrantiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]",
        "terseLabel": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r36",
      "r175"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.",
        "label": "Long-Lived Tangible Asset [Axis]",
        "terseLabel": "Property, Plant and Equipment, Type [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r177",
      "r399",
      "r400",
      "r401"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "terseLabel": "Property and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipment"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r35",
      "r173"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property, Plant and Equipment, Gross",
        "terseLabel": "Property and equipment at cost"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Property, Plant and Equipment [Line Items]",
        "terseLabel": "Property, Plant and Equipment [Line Items]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r11",
      "r12",
      "r175",
      "r382"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property, Plant and Equipment, Net",
        "terseLabel": "Property and equipment, net",
        "totalLabel": "Property and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r11",
      "r175"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table Text Block]",
        "terseLabel": "Schedule of property and equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r11",
      "r173"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.",
        "label": "Long-Lived Tangible Asset [Domain]",
        "terseLabel": "Property, Plant and Equipment, Type [Domain]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.",
        "label": "Property, Plant and Equipment, Useful Life",
        "terseLabel": "Useful life (in years)"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r66",
      "r168"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 5.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.",
        "label": "Accounts Receivable, Credit Loss Expense (Reversal)",
        "terseLabel": "Provision for doubtful accounts receivable"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PurchaseObligation": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Minimum amount of purchase arrangement in which the entity has agreed to expend funds to procure goods or services from a supplier.",
        "label": "Purchase Obligation",
        "terseLabel": "Outstanding purchase commitments"
       }
      }
     },
     "localname": "PurchaseObligation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CommitmentsandContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfNotesPayable": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for a borrowing supported by a written promise to pay an obligation.",
        "label": "Repayments of Notes Payable",
        "negatedLabel": "Payments on the Iliad Note",
        "terseLabel": "Payments on the Iliad Note"
       }
      }
     },
     "localname": "RepaymentsOfNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r278",
      "r411"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.",
        "label": "Research and Development Expense",
        "terseLabel": "Product development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpenseMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included.",
        "label": "Research and Development Expense [Member]",
        "terseLabel": "Product development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestrictedCash": {
     "auth_ref": [
      "r91",
      "r363",
      "r378"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash restricted as to withdrawal or usage. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits.",
        "label": "Restricted Cash",
        "terseLabel": "Restricted cash held in other assets"
       }
      }
     },
     "localname": "RestrictedCash",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/LeasesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedStockUnitsRSUMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met.",
        "label": "Restricted Stock Units (RSUs) [Member]",
        "terseLabel": "Restricted Stock Units"
       }
      }
     },
     "localname": "RestrictedStockUnitsRSUMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestructuringAndRelatedActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restructuring and Related Activities [Abstract]",
        "terseLabel": "Restructuring and Related Activities [Abstract]"
       }
      }
     },
     "localname": "RestructuringAndRelatedActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock": {
     "auth_ref": [
      "r185"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for restructuring and related activities. Description of restructuring activities such as exit and disposal activities, include facts and circumstances leading to the plan, the expected plan completion date, the major types of costs associated with the plan activities, total expected costs, the accrual balance at the end of the period, and the periods over which the remaining accrual will be settled.",
        "label": "Restructuring and Related Activities Disclosure [Text Block]",
        "terseLabel": "Restructuring"
       }
      }
     },
     "localname": "RestructuringAndRelatedActivitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/Restructuring"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RestructuringCostAndReserveAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of restructuring cost.",
        "label": "Restructuring Type [Axis]",
        "terseLabel": "Restructuring Type [Axis]"
       }
      }
     },
     "localname": "RestructuringCostAndReserveAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RestructuringCostAndReserveLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Restructuring Cost and Reserve [Line Items]",
        "terseLabel": "Restructuring Cost and Reserve [Line Items]"
       }
      }
     },
     "localname": "RestructuringCostAndReserveLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RestructuringCosts": {
     "auth_ref": [
      "r85"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after cash payment, of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation.",
        "label": "Restructuring Costs",
        "terseLabel": "Restructuring"
       }
      }
     },
     "localname": "RestructuringCosts",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited",
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestructuringPlanAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by individual restructuring plan.",
        "label": "Restructuring Plan [Axis]",
        "terseLabel": "Restructuring Plan [Axis]"
       }
      }
     },
     "localname": "RestructuringPlanAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RestructuringPlanDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the individual restructuring plans.",
        "label": "Restructuring Plan [Domain]",
        "terseLabel": "Restructuring Plan [Domain]"
       }
      }
     },
     "localname": "RestructuringPlanDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestructuringReserve": {
     "auth_ref": [
      "r179",
      "r182"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount (including both current and noncurrent portions of the accrual) as of the balance sheet date pertaining to a specified type of cost associated with exit from or disposal of business activities or restructuring pursuant to a duly authorized plan.",
        "label": "Restructuring Reserve",
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance"
       }
      }
     },
     "localname": "RestructuringReserve",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestructuringReserveCurrent": {
     "auth_ref": [
      "r178",
      "r184"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of known and estimated obligations associated with exit from or disposal of business activities or restructurings pursuant to a duly authorized plan, which are expected to be paid in the next twelve months or in the normal operating cycle if longer. Costs of such activities include those for one-time termination benefits, termination of an operating lease or other contract, consolidating or closing facilities, relocating employees, and costs associated with an ongoing benefit arrangement, but excludes costs associated with the retirement of a long-lived asset.",
        "label": "Restructuring Reserve, Current",
        "terseLabel": "Accrued restructuring",
        "verboseLabel": "Less, short-term restructuring liability"
       }
      }
     },
     "localname": "RestructuringReserveCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestructuringReserveNoncurrent": {
     "auth_ref": [
      "r178"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of known and estimated costs associated with exit from or disposal of business activities or restructurings pursuant to a duly authorized plan, which are expected to be paid after one year or beyond the next operating cycle, if longer. Costs of such activities include those for one-time termination benefits, termination of an operating lease or other contract, consolidating or closing facilities, and relocating employees, and costs associated with an ongoing benefit arrangement, but excludes costs associated with the retirement of a long-lived asset.",
        "label": "Restructuring Reserve, Noncurrent",
        "terseLabel": "Long-term restructuring liability, included in other liabilities"
       }
      }
     },
     "localname": "RestructuringReserveNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestructuringReserveRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Restructuring Reserve [Roll Forward]",
        "terseLabel": "Restructuring Reserve [Roll Forward]"
       }
      }
     },
     "localname": "RestructuringReserveRollForward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r21",
      "r219",
      "r274",
      "r380",
      "r394",
      "r396"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings (Accumulated Deficit)",
        "terseLabel": "Accumulated deficit"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r101",
      "r102",
      "r103",
      "r105",
      "r110",
      "r112",
      "r166",
      "r271",
      "r272",
      "r273",
      "r287",
      "r288",
      "r391",
      "r393"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]",
        "terseLabel": "Accumulated Deficit"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueRecognitionPolicyTextBlock": {
     "auth_ref": [
      "r93",
      "r94"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.",
        "label": "Revenue [Policy Text Block]",
        "terseLabel": "Revenue"
       }
      }
     },
     "localname": "RevenueRecognitionPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Revenues": {
     "auth_ref": [
      "r63",
      "r96",
      "r141",
      "r142",
      "r145",
      "r150",
      "r151",
      "r155",
      "r156",
      "r158",
      "r165",
      "r320",
      "r372"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).",
        "label": "Revenues",
        "terseLabel": "Net sales"
       }
      }
     },
     "localname": "Revenues",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevolvingCreditFacilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.",
        "label": "Revolving Credit Facility [Member]",
        "terseLabel": "Revolving Credit Facility"
       }
      }
     },
     "localname": "RevolvingCreditFacilityMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SaleOfStockNameOfTransactionDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement.",
        "label": "Sale of Stock [Domain]",
        "terseLabel": "Sale of Stock [Domain]"
       }
      }
     },
     "localname": "SaleOfStockNameOfTransactionDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares issued or sold by the subsidiary or equity method investee per stock transaction.",
        "label": "Sale of Stock, Number of Shares Issued in Transaction",
        "terseLabel": "Sale of common stock (in shares)"
       }
      }
     },
     "localname": "SaleOfStockNumberOfSharesIssuedInTransaction",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SaleOfStockPricePerShare": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share amount received by subsidiary or equity investee for each share of common stock issued or sold in the stock transaction.",
        "label": "Sale of Stock, Price Per Share",
        "terseLabel": "Sale of common stock (in dollars per share)"
       }
      }
     },
     "localname": "SaleOfStockPricePerShare",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SalesRevenueNetMember": {
     "auth_ref": [
      "r134",
      "r158"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation.",
        "label": "Revenue Benchmark [Member]",
        "terseLabel": "Revenue"
       }
      }
     },
     "localname": "SalesRevenueNetMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r118"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.",
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]",
        "terseLabel": "Reconciliation of basic and diluted income (loss) per share"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": {
     "auth_ref": [
      "r245",
      "r267",
      "r276"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about amount recognized for award under share-based payment arrangement. Includes, but is not limited to, amount expensed in statement of income or comprehensive income, amount capitalized in statement of financial position, and corresponding reporting line item in financial statements.",
        "label": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]",
        "terseLabel": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]"
       }
      }
     },
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "auth_ref": [
      "r245",
      "r267",
      "r276"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.",
        "label": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]",
        "terseLabel": "Summary of stock-based compensation expense"
       }
      }
     },
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable": {
     "auth_ref": [
      "r155"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular presentation of the description and amount of revenues from a product or service, or a group of similar products or similar services, reported from external customers during the period, if the information is not provided as part of the reportable operating segment information.",
        "label": "Revenue from External Customers by Products and Services [Table]",
        "terseLabel": "Revenue from External Customers by Products and Services [Table]"
       }
      }
     },
     "localname": "ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDisaggregationofRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": {
     "auth_ref": [
      "r303",
      "r304"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3).",
        "label": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]",
        "terseLabel": "Schedule of Assets and Liabilities Measured on Recurring Basis"
       }
      }
     },
     "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r9",
      "r29",
      "r30",
      "r31"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.",
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "terseLabel": "Schedule of inventory"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/InventoriesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": {
     "auth_ref": [
      "r197"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability.",
        "label": "Schedule of Product Warranty Liability [Table Text Block]",
        "terseLabel": "Schedule of warranty activity"
       }
      }
     },
     "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r36",
      "r175"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table]",
        "terseLabel": "Property, Plant and Equipment [Table]"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRestructuringAndRelatedCostsTable": {
     "auth_ref": [
      "r180",
      "r181",
      "r183"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Table presenting the description of the restructuring costs, such as the expected cost; the costs incurred during the period; the cumulative costs incurred as of the balance sheet date; the income statement caption within which the restructuring charges recognized for the period are included; and the amount of and periodic changes to an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost by type of restructuring.",
        "label": "Schedule of Restructuring and Related Costs [Table]",
        "terseLabel": "Schedule of Restructuring and Related Costs [Table]"
       }
      }
     },
     "localname": "ScheduleOfRestructuringAndRelatedCostsTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock": {
     "auth_ref": [
      "r179",
      "r184"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost. This element may also include a description of any reversal and other adjustment made during the period to the amount of an accrued liability for restructuring activities. This element may be used to encapsulate the roll forward presentations of an entity's restructuring reserve by type of cost and in total, and explanation of changes that occurred in the period.",
        "label": "Schedule of Restructuring Reserve by Type of Cost [Table Text Block]",
        "terseLabel": "Schedule of Restructuring Reserve by Type of Cost"
       }
      }
     },
     "localname": "ScheduleOfRestructuringReserveByTypeOfCostTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r246",
      "r270"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of information about share-based payment arrangement.",
        "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]",
        "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r248",
      "r259",
      "r260"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.",
        "label": "Share-based Payment Arrangement, Option, Activity [Table Text Block]",
        "terseLabel": "Summary of option activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "auth_ref": [
      "r262"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.",
        "label": "Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]",
        "terseLabel": "Schedule of valuation assumptions"
       }
      }
     },
     "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year.",
        "label": "Share-based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block]",
        "terseLabel": "Summary of restricted stock activity"
       }
      }
     },
     "localname": "ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfStockByClassTable": {
     "auth_ref": [
      "r46",
      "r95",
      "r122",
      "r123",
      "r208",
      "r209",
      "r210",
      "r212",
      "r213",
      "r214",
      "r216",
      "r217",
      "r218",
      "r219"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule detailing information related to equity by class of stock. Class of stock includes common, convertible, and preferred stocks which are not redeemable or redeemable solely at the option of the issuer. It also includes preferred stock with redemption features that are solely within the control of the issuer and mandatorily redeemable stock if redemption is required to occur only upon liquidation or termination of the reporting entity.",
        "label": "Schedule of Stock by Class [Table]",
        "terseLabel": "Schedule of Stock by Class [Table]"
       }
      }
     },
     "localname": "ScheduleOfStockByClassTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock": {
     "auth_ref": [
      "r221",
      "r244"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of warrants or rights issued. Warrants and rights outstanding are derivative securities that give the holder the right to purchase securities (usually equity) from the issuer at a specific price within a certain time frame. Warrants are often included in a new debt issue to entice investors by a higher return potential. The main difference between warrants and call options is that warrants are issued and guaranteed by the company, whereas options are exchange instruments and are not issued by the company. Also, the lifetime of a warrant is often measured in years, while the lifetime of a typical option is measured in months. Disclose the title of issue of securities called for by warrants and rights outstanding, the aggregate amount of securities called for by warrants and rights outstanding, the date from which the warrants or rights are exercisable, and the price at which the warrant or right is exercisable.",
        "label": "Schedule of Stockholders' Equity Note, Warrants or Rights [Table Text Block]",
        "terseLabel": "Schedule of Stockholders' Equity Note, Warrants or Rights"
       }
      }
     },
     "localname": "ScheduleOfStockholdersEquityNoteWarrantsOrRightsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r70"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.",
        "label": "Selling, General and Administrative Expense",
        "terseLabel": "Selling, general, and administrative"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpensesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing selling, general and administrative expense.",
        "label": "Selling, General and Administrative Expenses [Member]",
        "terseLabel": "Selling, general, and administrative"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpensesMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r84"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Noncash Expense",
        "terseLabel": "Stock-based compensation"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Additional Disclosures [Abstract]",
        "terseLabel": "Weighted Average Remaining Contractual Life (in years)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdditionalDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r257"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "terseLabel": "Granted (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r257"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Granted (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r256"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value",
        "periodEndLabel": "Outstanding at end of period (in dollars per share)",
        "periodStartLabel": "Outstanding at beginning of period (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]",
        "verboseLabel": "Weighted Average Grant Date Fair Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r258"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "negatedLabel": "Vested (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r258"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value",
        "terseLabel": "Released (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Agreed-upon price for the exchange of the underlying asset relating to the share-based payment award.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Exercise Price",
        "terseLabel": "Exercise price (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "auth_ref": [
      "r265"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate",
        "terseLabel": "Dividend yield"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": {
     "auth_ref": [
      "r264"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate",
        "terseLabel": "Expected volatility"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "auth_ref": [
      "r266"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate",
        "terseLabel": "Risk-free interest rate"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum risk-free interest rate assumption that is used in valuing an option on its own shares.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate, Maximum",
        "terseLabel": "Risk free interest rate, maximum"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The minimum risk-free interest rate assumption that is used in valuing an option on its own shares.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate, Minimum",
        "terseLabel": "Risk free interest rate, minimum"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised": {
     "auth_ref": [
      "r253"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of non-option equity instruments exercised by participants.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Non-Option Equity Instruments, Exercised",
        "negatedTerseLabel": "Warrants exercised (in shares)",
        "terseLabel": "Issuance of common stock upon the exercise of warrants (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsExercised",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber": {
     "auth_ref": [
      "r249",
      "r251"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of equity instruments other than options outstanding, including both vested and non-vested instruments.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Non-Option Equity Instruments, Outstanding, Number",
        "periodEndLabel": "Outstanding at end of period (in shares)",
        "periodStartLabel": "Outstanding at beginning of period (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Non-Option Equity Instruments, Outstanding [Roll Forward]",
        "verboseLabel": "Restricted Stock Units"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingRollForward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract]",
        "terseLabel": "Weighted Average Remaining Contractual Life (in years)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r252"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number",
        "terseLabel": "Exercisable at period end (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r252"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price",
        "terseLabel": "Exercisable at period end (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod": {
     "auth_ref": [
      "r255"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options or other stock instruments for which the right to exercise has lapsed under the terms of the plan agreements.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Expirations in Period",
        "negatedTerseLabel": "Expired (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": {
     "auth_ref": [
      "r254"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period",
        "negatedTerseLabel": "Canceled/forfeited (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross number of share options (or share units) granted during the period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross",
        "terseLabel": "Granted (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r250",
      "r270"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number",
        "periodEndLabel": "Outstanding at end of period (in shares)",
        "periodStartLabel": "Outstanding at beginning of period (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding [Roll Forward]",
        "terseLabel": "Number of Options"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r249"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "periodEndLabel": "Outstanding at end of period (in dollars per share)",
        "periodStartLabel": "Outstanding at beginning of period (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]",
        "terseLabel": "Weighted Average Exercise Price Per Share"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": {
     "auth_ref": [
      "r261"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number",
        "terseLabel": "Vested and expected to vest at period end (in shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r261"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price",
        "terseLabel": "Vested and expected to vest at period end (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r244",
      "r247"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Award Type [Domain]",
        "terseLabel": "Award Type [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited",
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options of the plan that expired.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Expirations in Period, Weighted Average Exercise Price",
        "terseLabel": "Expired (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExpirationsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price",
        "terseLabel": "Canceled/forfeited (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price",
        "terseLabel": "Granted (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by supplier.",
        "label": "Supplier [Axis]",
        "terseLabel": "Supplier [Axis]"
       }
      }
     },
     "localname": "ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Specific identification or general nature of (for example, a construction contractor, a consulting firm) the party from whom the goods or services were or are to be received.",
        "label": "Supplier [Domain]",
        "terseLabel": "Supplier [Domain]"
       }
      }
     },
     "localname": "ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SharePrice": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Price of a single share of a number of saleable stocks of a company.",
        "label": "Share Price",
        "terseLabel": "Fair value of options issued (in dollars per share)"
       }
      }
     },
     "localname": "SharePrice",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "auth_ref": [
      "r263",
      "r275"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term",
        "terseLabel": "Expected life (in years)"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityEstimatesUtilizedDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r270"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term",
        "terseLabel": "Exercisable at period end"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r261"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term",
        "terseLabel": "Outstanding at end of period"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityRestrictedStockUnitsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r261"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term",
        "terseLabel": "Vested and expected to vest at period end"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquityStockOptionsandaSummaryofActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r222",
      "r277"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for shareholders' equity and share-based payment arrangement. Includes, but is not limited to, disclosure of policy and terms of share-based payment arrangement, deferred compensation arrangement, and employee stock purchase plan (ESPP).",
        "label": "Shareholders' Equity and Share-based Payments [Text Block]",
        "terseLabel": "Shareholders' Equity"
       }
      }
     },
     "localname": "ShareholdersEquityAndShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/StockholdersEquity"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.",
        "label": "Shares, Outstanding",
        "periodEndLabel": "Balance at the end of the period (in shares)",
        "periodStartLabel": "Balance at the beginning of the period (in shares)"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation",
        "negatedLabel": "Common stock withheld in lieu of income tax withholding on vesting of restricted stock units (in shares)"
       }
      }
     },
     "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r100"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Significant Accounting Policies [Text Block]",
        "terseLabel": "Basis of Presentation and Summary of Significant Accounting Policies"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SoftwareAndSoftwareDevelopmentCostsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Purchased software applications and internally developed software for sale, licensing or long-term internal use.",
        "label": "Software and Software Development Costs [Member]",
        "terseLabel": "Computer software"
       }
      }
     },
     "localname": "SoftwareAndSoftwareDevelopmentCostsMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount as of the balance sheet date of the aggregate standard product warranty liability that is expected to be paid within one year or the normal operating cycle, if longer. Does not include the balance for the extended product warranty liability.",
        "label": "Standard Product Warranty Accrual, Current",
        "terseLabel": "Accrued warranty reserve"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualCurrent",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualPayments": {
     "auth_ref": [
      "r191"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties.",
        "label": "Standard Product Warranty Accrual, Decrease for Payments",
        "negatedLabel": "In kind settlements made during the period"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualPayments",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease": {
     "auth_ref": [
      "r193"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in the standard product warranty accrual from changes in estimates attributable to preexisting product warranties. Excludes extended product warranties.",
        "label": "Standard Product Warranty Accrual, Increase (Decrease) for Preexisting Warranties",
        "terseLabel": "Adjustments to existing warranties"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualPreexistingIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualWarrantiesIssued": {
     "auth_ref": [
      "r192"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in the standard product warranty accrual from warranties issued. Excludes extended product warranties.",
        "label": "Standard Product Warranty Accrual, Increase for Warranties Issued",
        "terseLabel": "Warranty accruals for current period sales"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualWarrantiesIssued",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesWarrantyActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyPolicy": {
     "auth_ref": [
      "r92",
      "r194"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for standard warranties including the methodology for measuring the liability.",
        "label": "Standard Product Warranty, Policy [Policy Text Block]",
        "terseLabel": "Product warranties"
       }
      }
     },
     "localname": "StandardProductWarrantyPolicy",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StateAndLocalJurisdictionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Designated tax department of a state or local government entitled to levy and collect income taxes from the entity.",
        "label": "State and Local Jurisdiction [Member]",
        "terseLabel": "State and Local Jurisdiction"
       }
      }
     },
     "localname": "StateAndLocalJurisdictionMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StatementClassOfStockAxis": {
     "auth_ref": [
      "r16",
      "r17",
      "r18",
      "r95",
      "r96",
      "r113",
      "r114",
      "r115",
      "r117",
      "r118",
      "r122",
      "r123",
      "r124",
      "r165",
      "r211",
      "r320"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by the different classes of stock of the entity.",
        "label": "Class of Stock [Axis]",
        "terseLabel": "Class of Stock [Axis]"
       }
      }
     },
     "localname": "StatementClassOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r48",
      "r101",
      "r102",
      "r103",
      "r105",
      "r110",
      "r112",
      "r121",
      "r166",
      "r211",
      "r219",
      "r271",
      "r272",
      "r273",
      "r287",
      "r288",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r391",
      "r392",
      "r393"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]",
        "terseLabel": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited",
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Statement [Line Items]",
        "terseLabel": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]",
        "terseLabel": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]",
        "terseLabel": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Comprehensive Income [Abstract]",
        "terseLabel": "Statement of Comprehensive Income [Abstract]"
       }
      }
     },
     "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]",
        "terseLabel": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r101",
      "r102",
      "r103",
      "r121",
      "r362"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.",
        "label": "Statement [Table]",
        "terseLabel": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheetsParentheticals",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of preferred stock and warrants for common stock issued.",
        "label": "Stock and Warrants Issued During Period, Value, Preferred Stock and Warrants",
        "verboseLabel": "Issuance of common stock and warrants"
       }
      }
     },
     "localname": "StockAndWarrantsIssuedDuringPeriodValuePreferredStockAndWarrants",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities": {
     "auth_ref": [
      "r47",
      "r211",
      "r212",
      "r219"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued during the period as a result of the conversion of convertible securities.",
        "label": "Stock Issued During Period, Shares, Conversion of Convertible Securities",
        "terseLabel": "Conversion of notes to preferred stock (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": {
     "auth_ref": [
      "r17",
      "r18",
      "r211",
      "r219"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued during the period as a result of an employee stock purchase plan.",
        "label": "Stock Issued During Period, Shares, Employee Stock Purchase Plans",
        "terseLabel": "Issuance of common stock under employee stock option and stock purchase plans (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesNewIssues": {
     "auth_ref": [
      "r17",
      "r18",
      "r211",
      "r219"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of new stock issued during the period.",
        "label": "Stock Issued During Period, Shares, New Issues",
        "terseLabel": "Conversion of notes to stock (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesPeriodIncreaseDecrease": {
     "auth_ref": [
      "r211"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the period in the number of shares issued.",
        "label": "Stock Issued During Period, Shares, Period Increase (Decrease)",
        "terseLabel": "Issuance of common stock and warrants (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesPeriodIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities": {
     "auth_ref": [
      "r48",
      "r211",
      "r219"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The gross value of stock issued during the period upon the conversion of convertible securities.",
        "label": "Stock Issued During Period, Value, Conversion of Convertible Securities",
        "verboseLabel": "Conversion of notes to preferred stock"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueConversionOfConvertibleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": {
     "auth_ref": [
      "r17",
      "r18",
      "r211",
      "r219"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate change in value for stock issued during the period as a result of employee stock purchase plan.",
        "label": "Stock Issued During Period, Value, Employee Stock Purchase Plan",
        "terseLabel": "Issuance of common stock under employee stock option and stock purchase plans"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueEmployeeStockPurchasePlan",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueNewIssues": {
     "auth_ref": [
      "r17",
      "r18",
      "r211",
      "r219"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.",
        "label": "Stock Issued During Period, Value, New Issues",
        "terseLabel": "Issuance of common stock upon the exercise of warrants"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueNewIssues",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockOptionMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contracts conveying rights, but not obligations, to buy or sell a specific quantity of stock at a specified price during a specified period (an American option) or at a specified date (a European option).",
        "label": "Equity Option [Member]",
        "terseLabel": "Equity Option"
       }
      }
     },
     "localname": "StockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r18",
      "r23",
      "r24",
      "r96",
      "r162",
      "r165",
      "r320"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.",
        "label": "Stockholders' Equity Attributable to Parent",
        "periodEndLabel": "Balance at the end of the period",
        "periodStartLabel": "Balance at the beginning of the period",
        "terseLabel": "Stockholders' equity",
        "totalLabel": "Total stockholders' equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnaudited",
      "http://www.energyfocusinc.com/role/RestructuringNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Attributable to Parent [Abstract]",
        "terseLabel": "STOCKHOLDERS' EQUITY"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Note [Abstract]",
        "terseLabel": "Stockholders' Equity Note [Abstract]"
       }
      }
     },
     "localname": "StockholdersEquityNoteAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityNoteStockSplitConversionRatio1": {
     "auth_ref": [
      "r220"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Ratio applied to the conversion of stock split, for example but not limited to, one share converted to two or two shares converted to one.",
        "label": "Stockholders' Equity Note, Stock Split, Conversion Ratio",
        "terseLabel": "Reverse stock split ratio"
       }
      }
     },
     "localname": "StockholdersEquityNoteStockSplitConversionRatio1",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofChangesinStockholdersEquityUnauditedParenthetical",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnauditedParenthetical",
      "http://www.energyfocusinc.com/role/NatureofOperationsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityStockSplitDetails"
     ],
     "xbrltype": "pureItemType"
    },
    "us-gaap_SubleaseIncome": {
     "auth_ref": [
      "r340",
      "r345"
     ],
     "calculation": {
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails": {
       "order": 1.0,
       "parentTag": "efoi_OperatingLeaseCostNetOfSubleaseIncome",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of sublease income excluding finance and operating lease expense.",
        "label": "Sublease Income",
        "negatedTerseLabel": "Sub-lease income"
       }
      }
     },
     "localname": "SubleaseIncome",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/LeasesComponentsofLeaseCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SubsequentEventLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.",
        "label": "Subsequent Event [Line Items]",
        "terseLabel": "Subsequent Event [Line Items]"
       }
      }
     },
     "localname": "SubsequentEventLineItems",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventMember": {
     "auth_ref": [
      "r328",
      "r349"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event [Member]",
        "terseLabel": "Subsequent Event"
       }
      }
     },
     "localname": "SubsequentEventMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventTable": {
     "auth_ref": [
      "r328",
      "r349"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued.",
        "label": "Subsequent Event [Table]",
        "terseLabel": "Subsequent Event [Table]"
       }
      }
     },
     "localname": "SubsequentEventTable",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r328",
      "r349"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Axis]",
        "terseLabel": "Subsequent Event Type [Axis]"
       }
      }
     },
     "localname": "SubsequentEventTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r328",
      "r349"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event Type [Domain]",
        "terseLabel": "Subsequent Event Type [Domain]"
       }
      }
     },
     "localname": "SubsequentEventTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtConvertibleNotesDetails",
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/DebtStreetervilleNoteDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityPreferredStockDetails",
      "http://www.energyfocusinc.com/role/SubsequentEventsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events [Abstract]"
       }
      }
     },
     "localname": "SubsequentEventsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r348",
      "r351"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.",
        "label": "Subsequent Events [Text Block]",
        "terseLabel": "Subsequent Events"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/SubsequentEvents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SubsidiarySaleOfStockAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of sale of the entity's stock.",
        "label": "Sale of Stock [Axis]",
        "terseLabel": "Sale of Stock [Axis]"
       }
      }
     },
     "localname": "SubsidiarySaleOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFinancialInstrumentsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityIssuanceofCommonStockandWarrantsDetails",
      "http://www.energyfocusinc.com/role/StockholdersEquityScheduleofWarrantsOutstandingDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SupplierConcentrationRiskMember": {
     "auth_ref": [
      "r132"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the percentage that purchases in the period from one or more significant suppliers is to cost of goods or services, as defined by the entity, such as total cost of sales or services, product line cost of sales or services, segment cost of sales or services. Risk is the materially adverse effects of loss of a material supplier or a supplier of critically needed goods or services.",
        "label": "Supplier Concentration Risk [Member]",
        "terseLabel": "Supplier concentration risk"
       }
      }
     },
     "localname": "SupplierConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesCertainRisksandConcentrationsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Text Block [Abstract]"
       }
      }
     },
     "localname": "TextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy": {
     "auth_ref": [
      "r164"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for treatment of receivables that are billable but have not been billed as of the balance sheet date.",
        "label": "Trade and Other Accounts Receivable, Unbilled Receivables, Policy [Policy Text Block]",
        "terseLabel": "Accounts Receivable"
       }
      }
     },
     "localname": "TradeAndOtherAccountsReceivableUnbilledReceivablesPolicy",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_TypeOfRestructuringDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identification of the types of restructuring costs.",
        "label": "Type of Restructuring [Domain]",
        "terseLabel": "Type of Restructuring [Domain]"
       }
      }
     },
     "localname": "TypeOfRestructuringDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/RestructuringReconciliationofRestructuringLiabilityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnamortizedDebtIssuanceExpense": {
     "auth_ref": [
      "r37"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The remaining balance of debt issuance expenses that were capitalized and are being amortized against income over the lives of the respective bond issues. This does not include the amounts capitalized as part of the cost of the utility plant or asset.",
        "label": "Unamortized Debt Issuance Expense",
        "terseLabel": "Amortized net issuance costs"
       }
      }
     },
     "localname": "UnamortizedDebtIssuanceExpense",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r126",
      "r127",
      "r129",
      "r130",
      "r137",
      "r138",
      "r139"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.",
        "label": "Use of Estimates, Policy [Policy Text Block]",
        "terseLabel": "Use of estimates"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_VariableRateAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of variable rate.",
        "label": "Variable Rate [Axis]",
        "terseLabel": "Variable Rate [Axis]"
       }
      }
     },
     "localname": "VariableRateAxis",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableRateDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.",
        "label": "Variable Rate [Domain]",
        "terseLabel": "Variable Rate [Domain]"
       }
      }
     },
     "localname": "VariableRateDomain",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_VehiclesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment used primarily for road transportation.",
        "label": "Vehicles [Member]",
        "terseLabel": "Vehicles"
       }
      }
     },
     "localname": "VehiclesMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/PropertyandEquipmentScheduleofPropertyandEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WarrantMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Security that gives the holder the right to purchase shares of stock in accordance with the terms of the instrument, usually upon payment of a specified amount.",
        "label": "Warrant [Member]",
        "terseLabel": "Warrant"
       }
      }
     },
     "localname": "WarrantMember",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesFairValueInputsDetails",
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesNetLossperShareDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Average number of shares or units issued and outstanding that are used in calculating basic and diluted earnings per share (EPS).",
        "label": "Weighted Average Number of Shares Outstanding, Basic and Diluted",
        "terseLabel": "Basic and diluted (in shares)",
        "verboseLabel": "Basic weighted average common shares outstanding (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfShareOutstandingBasicAndDiluted",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesReconciliationofBasicandDilutedLossperShareDetails",
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]",
        "terseLabel": "Weighted average shares of common stock outstanding:"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/CondensedConsolidatedStatementsofOperationsUnaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_WriteOffOfDeferredDebtIssuanceCost": {
     "auth_ref": [
      "r71"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Write-off of amounts previously capitalized as debt issuance cost in an extinguishment of debt.",
        "label": "Write off of Deferred Debt Issuance Cost",
        "terseLabel": "Write off of remaining issuance costs"
       }
      }
     },
     "localname": "WriteOffOfDeferredDebtIssuanceCost",
     "nsuri": "http://fasb.org/us-gaap/2020-01-31",
     "presentation": [
      "http://www.energyfocusinc.com/role/DebtCreditFacilitiesDetails",
      "http://www.energyfocusinc.com/role/DebtIliadNoteDetails"
     ],
     "xbrltype": "monetaryItemType"
    }
   },
   "unitCount": 6
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(19)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21914-107793"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21930-107793"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21711-107793"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22583-107794"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22595-107794"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22644-107794"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22658-107794"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22663-107794"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1252-109256"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1278-109256"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "55",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e2626-109256"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=SL5780133-109256"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=SL5780133-109256"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3630-109257"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6828210&loc=d3e70191-108054"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6828210&loc=d3e70229-108054"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70478-108055"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(19))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6327-108592"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6442-108592"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "http://asc.fasb.org/topic&trid=2134479"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8924-108599"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9031-108599"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9038-108599"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9038-108599"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9054-108599"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=121593590&loc=d3e4428-111522"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=121593590&loc=d3e4531-111522"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=121611835&loc=d3e5074-111524"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=27010918&loc=d3e74512-122707"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=121604886&loc=d3e8622-111531"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "310",
   "URI": "http://asc.fasb.org/topic&trid=2196771"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121599878&loc=SL82895884-210446"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919249-210447"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4542-108314"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.BB)",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "http://asc.fasb.org/topic&trid=2126998"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "http://asc.fasb.org/topic&trid=2155823"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 5.P.3)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140864-122747"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 5.P.4(b))",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 5.P.4)",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(b)(2))",
   "Topic": "420",
   "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "420",
   "URI": "http://asc.fasb.org/topic&trid=2175745"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=121559207&loc=d3e25336-109308"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=121559207&loc=d3e25336-109308"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "http://asc.fasb.org/topic&trid=2144648"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "http://asc.fasb.org/topic&trid=2127136"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "((c)(2))",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "((c)(3))",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "((c)(4))",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(5)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=6802200&loc=SL6230698-112601"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=109126253&loc=d3e4852-112606"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=109126253&loc=d3e4724-112606"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=120520924&loc=SL6031897-161870"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=120520924&loc=SL6031897-161870"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=120520924&loc=SL6031898-161870"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "40",
   "SubTopic": "50",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=117329964&loc=d3e12317-112629"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "40",
   "SubTopic": "50",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=117329964&loc=d3e12355-112629"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "http://asc.fasb.org/topic&trid=2208564"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "480",
   "URI": "http://asc.fasb.org/extlink&oid=109262497&loc=d3e20148-110875"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(CFRR 211.02)",
   "Topic": "480",
   "URI": "http://asc.fasb.org/extlink&oid=65877616&loc=d3e177068-122764"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=65888546&loc=d3e21300-112643"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21553-112644"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21463-112644"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21475-112644"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21484-112644"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21488-112644"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21506-112644"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21506-112644"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21521-112644"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21538-112644"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 4.C)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187143-122770"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "50",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=6784392&loc=d3e188667-122775"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "http://asc.fasb.org/topic&trid=2208762"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121556615&loc=SL49130531-203044"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121556615&loc=SL49130532-203044"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130545-203045"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130549-203045"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "710",
   "URI": "http://asc.fasb.org/extlink&oid=6409733&loc=d3e19512-108361"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "10",
   "Topic": "710",
   "URI": "http://asc.fasb.org/extlink&oid=6409875&loc=d3e20028-108363"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(03)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118257860&loc=d3e4179-114921"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a),(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(4)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.D.2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=115993241&loc=d3e301413-122809"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.F)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=115993241&loc=d3e301413-122809"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "http://asc.fasb.org/topic&trid=2228938"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "http://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32705-109319"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32718-109319"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32809-109319"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32857-109319"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32559-109319"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32559-109319"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32621-109319"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32632-109319"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330036-122817"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330215-122817"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "http://asc.fasb.org/topic&trid=2144680"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4613673-111683"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4569616-111683"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4569643-111683"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(3)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=121559654&loc=d3e5710-111685"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=121559654&loc=d3e5710-111685"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(1)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(2)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19279-110258"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=SL6742756-110258"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "60",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=7493716&loc=d3e21868-110260"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13279-108611"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13467-108611"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13476-108611"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13531-108611"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13537-108611"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13537-108611"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(7))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=75031198&loc=d3e14064-108612"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=98513438&loc=d3e33268-110906"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32618-110901"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(8))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=119993939&loc=d3e28541-108399"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=119993939&loc=d3e28551-108399"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=119993939&loc=d3e28555-108399"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "835",
   "URI": "http://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918627-209977"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918627-209977"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918643-209977"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918643-209977"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918673-209980"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.1)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918701-209980"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121568110&loc=SL77918982-209971"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/subtopic&trid=77888251"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=121576215&loc=SL77919396-209981"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "http://asc.fasb.org/topic&trid=2122774"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.14)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "http://asc.fasb.org/extlink&oid=119991564&loc=SL119991595-234733"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(1)(a))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(13))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.15(5))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.17)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(26))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.9)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Subparagraph": "e",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=75038535&loc=d3e64711-112823"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=75038535&loc=d3e64711-112823"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=108315417&loc=d3e61044-112788"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(2))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(22))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121643868&loc=SL117782755-158439"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117783719-158441"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117783719-158441"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117783719-158441"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117819544-158441"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=99380617&loc=SL75241803-196195"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "http://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99779-112916"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99893-112916"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=SL120174063-112916"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756"
  },
  "r412": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r413": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r414": {
   "Name": "Form 10-Q",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "308",
   "Subsection": "a"
  },
  "r415": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r416": {
   "Name": "Regulation 12B",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r417": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.28,29)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-30)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6801-107765"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.9)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=99393222&loc=SL20226024-175313"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669646-108580"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=d3e637-108580"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=d3e681-108580"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669686-108580"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL34724394-108580"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669619-108580"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669619-108580"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669625-108580"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6911-107765"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669625-108580"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=d3e557-108580"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(210.5-03(11))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(24))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.13)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6935-107765"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.8)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3179-108585"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3213-108585"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3255-108585"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3255-108585"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3291-108585"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3291-108585"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3291-108585"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e7018-107765"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3291-108585"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3367-108585"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3521-108585"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3536-108585"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3602-108585"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3602-108585"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3602-108585"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3044-108585"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=d3e4304-108586"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=d3e4313-108586"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=d3e4332-108586"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=SL98516268-108586"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=84158767&loc=d3e18780-107790"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=84158767&loc=d3e18823-107790"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=84158767&loc=d3e18823-107790"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(d))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(m)(1)(iii))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(e),(f))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>83
<FILENAME>0000924168-21-000029-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000924168-21-000029-xbrl.zip
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
MN0E$"J'H>#9G@YFOS^95_ORQV;PV \ W!)B(,XLB8QC!1P_R',&#]S126\X
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
MYB4RQ%)-=2I\3RQATS@!^V=I^<!3GSX4(88"$&=YY/-CX=R98Z3G/A)<:Q)
M51O&N&".!.4#X@JN\.BU]F3VURP?DX2/S;1PO9OW'L*QL[)FB5 P"(P"B](S
MSZ*6P=-@P#LRQ#,SJ5?")O5*X,.L,L;"*):'O_'C;J[X5856[G%X< 66JTU_
MY4 8A9SB3.E@# . HQ1X$R&MP1O/[,6!,#/,MXNAT.:(:6]NRT&/$V=R2AC'
M!3:1:2ZTL5HC9QTFSFE%QZ?J8<)GE0_O#3DV\T'X,"S<H>F'U8,BE'SSI"N@
MNIY"^_PQ5D#3@>P\N(BM9U)&@#\<,Z\"]P83XJHP0R)+?4F?'XHS7*/0MV-&
MUYK^VN%?1%,GN268$8&45Y3IJ)D!!U>0\1')F%QX0;.K]&>)F!6<_ %/Y%$,
M=R11F2 5,4HP)H/!SA,J%$#0:#@5<[S>^^P*\Q'77L%^44*D5I%QAB6SA-IH
MM&6I3B^)_F*3LYP[LNP.@!2 M+YFG4[X&1K-,<8A\A%X@R-KD"-&*B,9=M9Z
MC"5WU($YQ<ZPB;-(9'W))'/ )+>]MTLV^:[W=MGT5Q;J(V(2>8!DX*T91[2P
M!K0_8P*<.$PG,6I01/7)A[GCJ ]F! -RQQ\*X*:RU$Y9:,=TUU9W-G97W3/$
M&5D=/XBP-YK^R@%R0#TND50>I\IDW%!N%!?1DE1Y$Z.Q=5_2\R<L_542_8IK
M9###1B&KTHY*(15*.<.*>FJ(EM[-?BAXJ^?R;FB9L]7AX# O;F6NK,/=_B!S
M:_FP-RCF91N)T-8B$0B5H!.)X2KM".""<1*IE-+./UW*X--JS[_/G>G\,RRR
MOL]*09H3"E%+C:%*>Q$=TP"/,:4T:.VI3:4SR_0R+)^#0C\65I&/-@,<.HO1
M$25U8-%8'06@PDB]%UHQ2JIHUW,D4_UH8.E:JLNO+)QH9S31!!-0GIPH8XEP
M\(=CX['3^OEFX&>E=&9R'AZ1*H0'5I8!U $4I@N&< TVCK-T3)Y5EYDH3Q[E
M^V&KCNOX,0*>(84UJ97@EQGPT801 >QZ!+?>I7.?T?/-P,_RY<72Q%K']/O;
ML5Q]N)<Y?V@Y[Y>AUR,1">L ^L-;(@-E,7IC.*+I:!T&#A !Y?'\J3D_X54\
M?QJ,4"K$*(-$,;*(D1:"!0NJ-R+I/8IS=+I&<NXSGYEBM&LZX1J7CTO% '(=
M#!,J,IU4-Z8_R(NG#P%,X4Q3%+U2!AD+BCOHH$00.E7T]]*!<16S7U5A1DCY
M)#4.G#+<,B45BY1QYI6E4JN0W'A%)6*+(7%7-MA]!3;^T#'N.=9=IG16N^2$
M6ZT$B<QRH2(VT7F.L41.$377\O9\A'R:$S-<.C5*,N5BJCDL-!&42.\LP#6/
MD+R1YCFG1)J:??NAC,O'DC>,B(^(@^9DGBG0H)Q%"8XR,M%B8NCLKW/.""F?
M9+G3\Z"($9H[I1F+1*/ ,1$X4/"?L*6+(7%3LF]3D3=.0N0R( ].+]..:!;
MI\)!>M"HDN$Y0BQ5'/7"'T[ATB1D-WWA_@"(;1;T &=,)'.&2&6M90QP"Z*:
M"\2-(DB$P.=(0&>,G%.13C"&2@DJ4(H3<P14I"F%0#MF& 71733IW G]8 IW
MN I3=GG@WL;9"?3VQ&4\IB2OBJ?"B-$J'%@$#T/30,&7EY8YH*I:-'F=)H&G
M(\$>@W?B!1!8,VV%E19Y@+A!.RV$H(LFP;NAT\EZ!^]"+Q2F V1>]=VLE_4'
M!33^&L:47DC;RZ)2$G 4L30P)HT.5 ;CHM:1!&'<HLGR;)!Z*E(M7= @R!AC
MHQF2$2B.",<4"(^\QW-P\-GJJ2G\[75,T,^#(G.#\0+17B\;]'=V]^8DTR Z
M3BU )8\ _<*4@;X52?JP]M88-0=G!\X061XO3D>YD,HA*G JU GP54F,J7+,
M!X]%E#=W3<Y@(9)^,;A<:=UUH6?@[2L:E;?&5S;S(CC3GZVM@X]5@D0:*8@Q
MAE*P;AH;'X)5/# %^@_<S&4Z\Q33F7_RU7>"#]V3,BFS9(0;"8'?;+O=>P:/
M[/ESK$F4#G'''4L[NF6JI:<!OGDNG?16Q+EE\U^A=>LT?QH&7 39FQ<VOS@,
MU9<Y0*9S]S&HD[N37AY\ &J,E&#"+:9.,LY2;G1$7M!H4CY5H(M7'&'V]WL_
M"-B4"=^A. &^&S5-]]IYXL/4[(,IGB!7;/K5$+@BUJ?:SHXZI@C2VADL*4:(
M@4MWD2"UY-@YXMBW!=B/##R5W<1"<\^UV=GK(G3*Z$O_,#NIF<(5>><Z>Z6?
MK.3%P:L45'HU;O$J&C>HQSP?],"6OJC%(N_NA-A/J[CTT\BNYU_?DYVO;=H8
M^J.-K_OO]-%V=^-LNW5 &ZV/=/]S@VVW/I+]EC]LGG>.F^MM^-[L--]M\>WU
M3O:>-COM\Y/#1NN8-<\W4)-\.MI>/T;-[AYMMQS?7_](X/OY?FLG@SYYNZ-&
MVVNZZ[J;O>VC@[/]UN;1_KN=SG[W(VL>[72;ZZNLL?YQM+WN>./(P_>WQPVR
M,7I/=P[;W;/.=G<G:Y!_.LW/&Z?M%MP__XC;G_?8]GH;GK.!&C#VQGKSN'G^
MJ3/Y#3QKN$_VQ/Z[K?-V=P^W6V\/FZ1-F^N?#O=;!_#<-H-W';5;&Z<-\I$V
M/W^*S5U$WK<V!HU==/HE1?$0E:YN @EUIFBL:\]CW6EDT@$!X-.:VIQ.Y]ZH
M>=1 [2/'FZT-VCCZB/?7_\D:K;VS<BJZG[(F:;#]H\[MZ6QMD<;Y3M8\/\:-
MEAO!=!XWNEMGT,_Y_KHC^Y^W:/O\L+M=3>?H8CH53^4]@JQS;'2=&:SKREA;
M)P*! XD,(Y3/ZW0^#W<V6HU!,T-GY92N?I%2$A4LJBM+.4RHYW5%@ZTKCC!5
M F.!EOSY;?[,+L3]K''NO@BLJ Q4USW6I,XHLG6+'*]'KCGW4J7ZR/,ZH\^D
M0+,K"M3&X*-BI,YEQ*! M:MK< _J(7).TH0ZXY?3^6V)7[TJ\5S:Z -7=8>\
MK -*974C+*U[1KGBQJ5=JLL)_>:$CJ[P)TQEI.#PUI6V(.Y,DKJ*G-4U4ZD$
MK!#&JGF=SN=1H#"=EP9>8J(I20:(&.!.9!T8>!'KD3)$O U6";*<SF].9YK*
M2W$':\Z\]![FTJ$Z\RK6+3$ 1=,1#5A&%QAY4>MDO>.=;SL%I4>0VKVH#?+Y
M= ,ZX=\[H_W/_L02)K;7-SN-S\WC_7>?NOOK!Z3YKHT:ZP>GS?4M&,?Q"+0
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
M;7Z>*6OLF?9-7 I".G^H\R$)XW)!\'F%@21G/)U&%S"M>_"JZLQS4K<JF+I
MC(<0J;%*O7@C,:]CBNY?37P,AVL)99]-ES1!VN;^U>XQ]ZF>22A*!?.R3!N"
M+V;L.IN>GUR*61^&6TL;:L'ZQY0EUSL(OM9/X9Y:Q_0'M:+<H'4';KJ5-WY_
M4:1GV!AR=X[@;G##(AMDT&.5'Q@*>+N38=$?ID3!05Z#%FGIM&)T3/ZP?Z;0
M0MI,LNH&KV]G13[R>XC'R#*]E:YXFS6?*($1N&T%5;;Q1S,8J5C1^/Y\PI_.
M8"0K2HI'[[8<[</R+;\3;1K/?-+SKT&+U/IY)_.U"0N-[\(,WW%S1G*IOIMB
M7&W-RP:=,C$W&'=8<Z!+^@\(\OPVLU.8--A25^Z.NC;O_-%_2 ;.@^:GJ!ZT
MP-/7'"=]E[P5SBJS54YFWJN='F9P]5+?_T@L>#Q%8U5Z[Q3.,7]./\XW-LHC
M3&RI).;8UVD<[>'][J>L3?;AN?M9\QWX&^N'G<:[C[QYM$4;G_\Y;G<WP.?9
MN+GY>]1L?>KN?_[G"'Y_U.QNH7;KG^/M=WNG^^O'I''DSMK=G:S= I_GDSJ[
M&MT3.!W9H4A=*>)3-5A95Y3K="2"04)$::RM-GF!+)3GX+RLG9BB]M5TAJ'V
M_Y8&&Z?]L;7^X<\E*B^%Y.F%9&P@*MNPE) '2,C&I818S 1"L>Z$0'6FB:EK
MFA(QI F6"<6< W=^8W-[:UK,/\\6>E8VOR2S?WO?R\2X;(Q!04(*2_%Y@/A<
MR:YWTGNM7)UR"@:&$E17AH9ZI,@SHJD@F@&"!1>Y:?K>_*<R,K6&*8[#H/;^
M_=KW%Y7NB1T\=WA@J^=3ZG2HV5'-'09X"7"ECP% AC)_/D4!KFPK_ /_63LT
M_5K:/.QKIM,9QT92;.$_PRQ%%@9YS89Q ^AS'%Q(!4CR8ER 9!Q=N!*9F+!J
MBCBDVZD 2<W#W=Y!V?2D""Z4JS*8U,H::/W:'] ?"$2M/P2HVS_,T][&2<V+
MP:$9W!S[J;D^RG(#=/GC\3O\^;*,"_U!JG>T(%9PWQ[!&Z3V95/X41K%N)]4
MQZ=?#J(<9(H5:53S9M1?J>(53Y^FM#8LBO(LU_0*R5H.S&#8GTMQ_Z5=UN1+
M-"Y&9%E=,4I!9IFM&V9X/0@?#$:.&*]?O&F'_KW[JQ\H?X]6B6H<V-*2\:>I
MX?#@(=Q=5Z*9S\#4L.]L+9_Z)NQ[(I/SH,Z3F@,-U\T& ]")H0.:KLA["3YU
M1K4 4&I4VTJHRK@RLVS=#$PME7*XJ>TO^[@:5]X90DN&>%+H.^%@6)U>4-NM
MMVI_3,P"H61EW&1PF)5[U$_2'O6G5O[5B"]T>NC_^6P:^\J,I@D=*_#?3V/3
M+PH<=Q9<K(?H)#@I7J2C(FG=$A\)"M[SH)8:>_$U]DRME_V8!@6596H=4P!T
M-<Z!!BU,4H-)I10)3MYYM0:L7+_S1K\+JA>>4DS@'.B?+DS"*(%GZ T09UKG
M.J@=%/GIX'!R=P6P="B'YD/,>F7YMS(_."4Z$7C+>P98WL9_39I]M\&]P[MH
MF #TN/$]8YVTS'J5@<#$ULG$);CJ!ZQ,OS8)7>'BIVJ3$+0BL'J*)3C"GJ#D
M"5V13] M9BM:/VP=\G'3TZ>:S/W^;EE;N)3UZXI^,=YJ]3>DVJ+L#'GZ8&N)
MWDNV2/C@("]&=]4;2OY1L39N,)>HO@J[;K]+(=?&>:/58,WN%FZ^^^=H'Y!\
M^^@C;Y+]SCZ,J]%:!21_Z^P1ED*N[7-XWOD!:0/R;W>;W>W/FUES_9CN=S\=
MMX^.4UXB:W:NK^L9AW&4S-:EB.E@))'.>W2ZSA5Q7E!FN!)ETMIM]+3PQ8:N
M^1P+\E:[]^')!7O/Z56;KW12.<]OAWT86'\^8\//K9,:%SHI$!8\%:(N)$5U
M)@FK*Q]M'5GCB/3$!QRNR.>O5UE"B9U?/(CW?Z#I/(C)QMT>XU(9/*HRF,SR
MNW*2UZHY7BJ%[RF%T56EX (A,/>VCH70=4;2P=0.F7J,A%H@((8O#SM]XN'U
MQY]@A>.74J\?>2PZ55=_2'PN?B,0EO;OW1F^R^)=:Q_EB@<@R%Y>+E@,^U40
M#2:]/,;LKL,4\J)\5F>4'GZ:P:-3=*X'+Y<G'/,UZY>(M&=Z+@56 :>F:J.I
M<7]@>MX4OE]+Y4HS?W<6?@W3/\R?=\;#9C.T^YPAW ?SR(_'</N'H=.YB+;^
M <Q1AE*KZLG?#E1>+!VUX16F2J-IFY;=-(GS;%%^:4&+?4$>O%7L?)T3GL[.
MC+*NF'!U)*44&G&-D?NN69B*Q,ST@A*?6@K +!G(!\Y82DH;'^L NBH?#DJ[
M4QJ@E.O<GVBPXO9N>%<E3/>KA.F+-.E)XO3+5%4>?MTPH_%>,52=G%BNKH]U
MSV:YM V]#'M9I7FJQ[ZXKHU "7&+;42"6H:T4TX09S126KE(A?ZR52HACM$+
M4,0N P>V_Z\76\W-ZT=BPHOZ?#!N<$=R5/E"96[>;CF*[<OI -\!' )HCGX_
M337Z(AS%#&-2CYZFI7>5#J>(K$X\=\H(1,K\8/82$?F2R(NS,2?4?7/_XMR8
M&8D$;CW)*_3TN@@I^>-KN-PS]_]=+Q(Q7LM#ES\QMI]WAH/;/[D?<%S]._5=
MDM5@K21F,CBEF0C22.V94)H&9K72]HM\,?G-87'I3QZ$NBV".:Z;. C%:],Y
M-:/^BU?7UR&SWD3V6%*S/SK2VTN:*>M9WYG7/!OGYK16W[[?2"?$K6TW6QO-
MUNYB;<C$> 6K^V]_:R'T6_?("I?RT9=7I5A!^F%'2OQ(MV)%\(>]YIWQ+$Q^
M?K-X-_.^$Z:4K/]A=:=5VZK5:YM;S=7FVM;J^QJ8F^V=QFHZ0'%V GF_%O.;
MQ8D'7?M#^Q.-.P:O?]CS]?$0G0LAQF]M#IFMI<JMUD:CAE?NC6N*!7K72VG:
M;:W">U\S&M_88O2]%[\F!C_,,;'\<W=G/]G'S%/BP54&EZ_Z6&SV+9Y=5.5F
M[M=K3_6:T_"U476,9 +D*>(+G\J=BF5"PEO3,:EXS.YA"(/^A==<N,.*,2D>
M^\U_[/7,T&?PFS_+S,GUX$+RW*\U0S<JL#SGM%X+LSRLAE^,3S;AU;#!VQ^?
MW_(:7C04J14,Q\S,6&J'18IQ_-?W74\LP,?^^Y5Y</VLI4U;VK2E37OVN;=+
MFU;6P:_VNX(QVSX)E=J[W/TZ *T7)MNSJN73NTQ>,G.E4;MB^Y;V;5'MFW[Q
M1BSMVRPH_=_H59?V[4?GWBWMVW7[EG(8BG ([=*^Y_=Y_\+.56RZ-'9+8W?3
MV!'^XHW\MK&[L4:JJIV+T[-_,]G'4F,_0(OYI<:^H;'+=+Q^RM8K\ST.\PZ(
M</__U#;^,\P&HZ6;LM3<]VMN]>*-FF$W9>GJ+*W)D\Y]6%J3&];$] ]KFYW\
M=!G?6AJ.^PT'92_>Z!DV'#.O>);QK:5]>X:YC\]OWZ;QFLU\ )T-\M)>W6/G
M-B^VIEVQ>'?9JJ656A0KQ<2+-QC/EYF:M=.DGM10+>[+/JJIFGG]6^;UDM\C
MK[>QVEQ]5Z;SCK>/[=;6MW;7]G9WM[:;M=7F.OQ_]7U[=VLW;1>YS )>VVZN
M;[4F;78V=O?>M\HFVQ\V=LI4^T=)#UZ:H)DR08J\>$/1?)F@V9*WI:>T-#\/
M,3_T]S _'_=6FZVM%AB,3QNE)8$+[R??DR%ZO[V[!]:EMOIV>Z]5:ZSN_/=&
MJ[:SM?O?SVA=?O$T]*6!^8%,,R+!PBQC<3.A=G^C5_T-+0S[/2Q,VN&^L_U^
MM[0N'W:VUS;6DT%9.B>+9SLH6MJ.65&HO_>KSD$D\'M5'WY&^TWOM;]5"R(5
M@]AN_7MCYV<+02R#YTN1^>U>]O< P;])]8[W&^]6WU?H=V-]J_GN.>'O,GKR
MC @X;43_3GQ^N7EA&0*8:+_5WT/]I7AQ;7-UK;6]LW3\%U'MZ:7:6ZJ]96K'
M]7?=:^YLO-O:;6WL;*S7=E??;Y3Y&1L?][9:[=KNQMK>SE9K:Z,*C.[MEN5
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
M#R;O!DVO/WI&V?8W068)8G7&P:L(-B.KE@]!I?3Z97C^.M>D7]_-YBGHE%C
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
MON_Y4:[,02J_4V34)U,P&;*127T;NI=UJ]^]*G5Z)5#L)XY\6Y?U34=F2^]
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
MQ1U7FY$M-.W#FH23)OTS*4NSDRIV1#T:'/I*)SY=Y5@?^#\N^_&BT1?-'>L
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
MXQ 1 *$*R1&5HD.*PQPXDE2@J.F%GD/)2Z_G<\*AT(0Y").P>]?\>7'OT2U
MDH_(4!"PF0,.?#3@A&YWT.D.?-;0WVOHP:"Z<:FAD"L7_Q/ "!777\+Q\) Y
M0IW7&FF+'4T0.^S>G6[A4!@,CE??O3L]/5WY97JME6[OX%V"YG>]>/G=A>S2
MVO]4=D>6V!6X)K2N'/>:Z6\<[J[K5PZCW58QWG<JJ6B93MPX"0T.?06!^ JP
M>"%.R;X?&7)1$YJ#2M1V;]/1JY6_3SI1%"U7T@JQ4@#)12/6+O$CSMT<XOP"
M>/1NH$W+7W1X\6<X J;W[L9HC,')& )9G\K7#3&IV7'QW:IZ!FSY+9G!Q8%<
M<1)J:[OM^-MG:?JF2=6OI W[V)AF;.E!3[<JQ[HW2/Z&.&?C+(T$QZ6DI-1Q
MG2*T9SBIFQW=L<TH7LSRE)O=7[FW1T;-H,FP/>[VFVE-7.WY5G':\)^G33<X
MO,"_L6\-H7H57GU%F]B"R&/N_<JMKG]Y&"^ZFM]0U;&_J;4%L.MH- A$A;=2
M4>Z%%LI1+A7QU"BIS'?,EBZ^=-B[6JL./# ]KW\ '>(#KNK6J3[K+[V[U@_M
M9@>,=_K-_KI_'M\:N[;N'<2[)6_BC1/G7FERWW*<%3V^5=O:^;!7>5_?^+*[
M7-FN;=P_&\OZ"!OUVN96;7=K\Z+EKP$2E9?Y\7M[8+?^<7MSO;&U6=EMQ'^J
M6[7&;J7^OK)1KW[:V?IW[)_MKUN5C_7=W3*.;W''U>8@_KI]Q//^L]F),-L]
MB7=U_3_*^$ /-_]+1Y^X9EP/IF_[;];4$0J-E@1^%Q"E_:"T7%\M'\4V2.R,
MEC[N^]6+%W]>+/?-3O%(Q9=NF@D1[D:@*=4*)"KAYHAFC6X_@M25 E)O6'3#
M:X*M1*/_WLMPY?YK#]T6Q2\J^:3;/GPMVJ_/T5C"']W8^6&&]U/NWWK*U"W1
M.TS7D:Z4:6NJ<=CSOM*.<H?]BH_ZZPJ5K>J>/:P0M/R(;:@7Z?AYV.:[VQ]T
MET/VL4?,E'SRI'V-F3SN8S89WTZ?P6=7JA+OAY9:@W-6<$Z7RUG!DWJ5SVJ7
M7N7M7WO?WC?WCUJM^F;UK-K8^5%O;+$]O-.J'1V<QM\]JY[_?5C]]H5>>I6/
MME#UV]]'M?8VK6Y^;<;[HWICG>Y_VVGOM_]N53</CVI'M</XF^RF5[G:^/)K
MKUW%>_'>M6]_QV?YPJ)\:__#?GNO_>6T_J&*JW@K/E\K5)LCC_(N//UNL0P2
M8@:T0 Q0C"DPA@A@'9>62N*YR3G!<PMRC]N4>8,@][@'SSG!<X]DYY=(1JU&
MRD7H"MQK0$TJV2N8 HH;**ED5&&8,X)?)'J9O59&\!S>H[2#^J;-FV%MU[17
MV/.'OM-/6]/#\S&?%FZ<,WE+%P<_-^'&[[N]^+93L2>]GN_8L\J@%^_6*E*9
M*OJR-GBN0/S:IRT4H+$QCAE#WC8:P(W1^#72\ T;O=YQC:O!O*KS'BE?/33T
MKT_=7G%A,.@US4FQ4]/H?M+Q-J4Y$6<NB&!M=\RDU=A& FX04#:R0:J$  J&
M:.$Z1JGSE!'"Y^<\G,4I</SX",)R'6Z58:'$L'!E'^J ))9" JR" =0S XP)
M'F@;@C;2&(EG=Z3+XF:ROG8SWI[D+-/O,%L1Y>'#=]MFUZ!TFDVH433-C23A
MU/C';:&^MO?V>;>HINZ=<IL/I=_ NH,Q7*S_>9&?9)$_&]_.<M(A;Q&@T$)
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
MK:8_2;OZS8[MMGUEH'\-+W=;Z3$K\3L_?7]0O R57GS9:]ITPOQ%<D[SB8$
M"QT:E0/8\BCE49K30(!'11H6OYT.KGS?[37TKV]7D!H_N#MX(+N\)DF];ZP/
MQ@HF,6&"\TP""YT -!@*-#<$.$J89-IBC6@9 PVSAB\B#I>9%[_YV311D:E9
M[_ZONZ.3_J (]]KQQ>&TC6Y>'IYG>8B?I:BPN$2L?S<B,,8" _&O!E0R!Y3!
M"'A.*3/86R*C!N IJDV5&&[>I!J_N44ACU(>I3E8$F<>#I"7Q!=<$H_6+Y=$
M*Q4U7LEH(UD"*)0"*.0T8":((*&BA.+2+(D+EI!5A,@ D^9[2LBZG/ YY2J'
MH^51RJ.41RF/TL*,TEOPELWM;"J)LZS178\]EUJ@6VE79;NSH8^; ]VZVS H
M^-,PS3(:%?\Y:?:; [_K>S^;U@^CC7>\[1YTFMF*F-B*V+KF6/-6<DJX!Q(S
M#BBC'*AH/  7O!)8*$=#6%I#%)8HUC@O(XNXC.11RJ-4_D7T.=UK>1$MTR(Z
MYHJ3*'A)*0(VB #BBJF!L8@"@:T5,(2XP-JR+:(+%C]9\X-*J]OOI^B?HB+2
MX+#G?:4=OWC8K_B.\ZY2U3U[6"%HN9)4,T=%YLVB/$IYE/(HY5%:F%%Z"[ZZ
M/)O*,IOR*.51FH.0&(6HX1!Q0IVA%F*M4 C6ZG1NKT3./<)FG_Q,TNTB7^MC
M-$G>][KMC=B>9N<D]G']V/<*\SV7T)C,)-\>5!L'ER:Y4T$0J 7 &C- (8TF
M>5 ">&.U8PIK&%(EP65.2Q(AD[6Z?(%N6:O+H-5CCC:&M0G!.P"-P8 &XH&R
M./[Q06+H-*&D7%H]H[BW<GC6Q)TZ^9=N%;7']6 6#K09[C.,#E<=]LTJB2/H
MNB>FY8L#5N\_>G4.87&R%$I+(.?"4X<LHI9(@X1G'EI$F*#,VN)<XM]F3CY\
M+G'QN_6307^@.ZDS,^I-A'K50?4J-Q):2@TV*H(>3;DOR )M<  (HPB&0>"@
M]-(:7F9J5@7!9J$YK[PA^6K@4+:-CZ<>U#Y=S\PG7-XFD;/!R@?/L\G'MT^#
MDV.%@QTVFDL( =4AA3))!W2D_< 2%*2P6D#&9I9#_G:0,E.J&5"J:&P*%[P5
MUE*-N69<*,*E]C#P" Z94I4!*JXHE1 "2V\@D(:PB!>. 4F\ 9)!1"1'$0HB
MI2++7-ZV(Q<6*#*ERI1J%I1J)EB9*=6SX63]BE)1QX-T @).F(^4"B.@B!6
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
MZ($I]UR4/X]2'J62C])DH6$2*<D$%IHK09E@TC@7E$)4(@<99-\W,<00(HA
M\8+<YOMWD/H$I]YMGO1BUWV*3]%UP_BPK1&.%D*?1J#Y*6%F9OX3,/_:[EBX
MF&068>L%8$@K0#520&IC .;00 (UQ80MK;%I.7]6XPRV4XU2F=ENGDWS-IOR
M*.51RJ.41VD6KF[,K!500*@1ILI:&9D39] @QI7%"CV" S\ZG/@V,_ZJ6R?^
M7F*<>?%DO'C<(\Z@%9@0#P(S 5 D!9!!:<"(%8@$+ BT,XLYGJ%^SRCK?>Y]
M;\F_=JI[/=T9/,VG-L/\L?D#P*<M4P],I3G(\LNCE$=IT7QJP]?;'=OSD3-L
M^N&_F3=,PAN:$%\E7=OO'$DB/%' (84!)=   RV+/$(QYD3BAV%IC4LYHXWT
MK,<9;9\V2F_!J3:WLVF2\'PA(3%6:(@L9=Q+J+FDW'@D?.#036AB_CZL:KWC
MOHVH\STFYV4Q\YOR>>F8;.FX"H5M5,EW+:/-B9@$-! 1_V &C,(0<(9Y_)?&
MQ<.E['U!55X]YDO?W]SJD4<ICU+YU\X9NV?SVEFBM?.L.KYV2HF((IH!3E!<
M.R6E0-F@ (MV-"9$$Z]1^=;.!0N5K(<X]6.[X[/V!_U*U-WFLSEP%WH'*^\S
MYE'*HY1'*8_2W([26W#/S>ULFJA\QO3^N>N&Q+H[.ND/VCXRGT9WW5T<Y99.
M<=ONC,YO&]O6N=@#WTB<*AL1DQ@19S<<<-$D#$@C!(R2%-!H-@"E6(KZ"-1R
M!Z5"9&F-3I6)7F+(>9.J_.86ACQ*>93F8%F<@>LM+XNOM2Q>]ZU!S)43 0$M
MH$K+(@/*>0,<ISX82!WRJ$3+XH+%0([\QY564YMFZ^8)I'E'(>_[Y%'*HY1'
M*8_26QZEM^ NF]O9],+NLLF+-C[&=ACQJ*'UD V&"0R&^L8-/UH<-<N55 !R
M+J+!H$DR'33P5FL5 O/4N*4UM,S)[7IB$]=T+",:O4DM?W-K1AZE/$ISL&+.
MP).65\S2K9C776S:,^@]8P"*H #E5@%C)0**28DHY)))5:H5<\$BUS:ZG=B:
M?M+4;JATNH-XYT&W<GP1S#F,6LN!:L^;'>D=(8%;1IS@%&.F-0_2HFA&"&48
MDC,/Y[TO<?)J.M3#\/6@:5I^U]LH.FCZO.$P$1KNCA_);;];&Q"*2QX(3$)
M!<5 :IM.L51:1&O16$J*6%XX=2QOWD&<!W::1RF/4AZE-S]*;\&'.[>S:0*#
M5%'&H)(.<L:HMS"=A8@P5L1B1*F>?5;5/:E4F87-F(7=B(:D@A.*/+#0B6B3
M<@L4#P)PZR2FS'J62EF@9<$S#9LS97]S2T<>I3Q*Y5\XH9:(2DNAB_^:X*1R
MC&J,.5-,,.SSPCFG"^=U9ZYPS$!B&"#!X[APLE3' PD@TFEWQB)!4QI!V1;.
M?&)2ELR2\W%BTGQ'+!=+$S"Z[]/CMH]]IZ\3^.7 Y;S9GT<ICU(>I3Q*"S-*
M9>8E;WXVE3[-/T4;_)6(TL883RKX4[TX2+*_X_]STNPW!]%X[_UL6C^T\G>\
M[1YTBCMF4W["B@#5J]/IDZ]&<>%!_,<!2KD%QG,& M88,H*"<F9I#<,2513+
MB\@B+B)YE/(HE7\)?9V2 'D)??FB.E<'*4%"8=#8 Q%87$(UM4!RP8"C'&DJ
M,5%!E&P)S8[P+)DER^@(+U^#LV26?!N2"Y;04_.#2JO;[Z> BLK@T,?_][RO
MM.,7#_L5WW'>5:JZ9P\K!"U7$AW-R3TY?BF/4AZE/$IYE!9FE,K,6/)LFK?9
ME$<IC](<%-R@&-% -4?::PJ]-#X@A)QAG!DIY&/"M"\+;EQW6&]W;+?M/T:[
MXWVOV]Z(/]KLG,2.K!_[7N&7SI'7D_B:JXWU07S^(G'\8V/]NU<4.P0],(9*
M0)T,0&M,@)$><VBT)UHLK3&*RE&H-BMNB2OE9,5]=L7=NU1<FV(K)/) <(H
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
M7C2RYU:R9W/66+ ,P2' 9RF$SXBP$60/,X+DH#>$R6DFN03OI0D\/#.&7=;
M0\.Z=V3=LQD[WYB,YHIH0ST1JA#$6&.)5C)*FN?!ZX -JEY>W$'PY3<8]OHC
MTVV922^&.\4:;'_@PX",^B=O< V&_6['MW .+UTTW6<4XL89X=,&&L.]_L<
M W*=;FB'$8BS_G' 1M][_7=F>)10K'SP?YY]&@:_U=NI:[_786+?&[_H]@)N
M#F\EYP4V]XY@FV @PSA*K(B6&$U9IBS34F 'OE4F+MHGMPYEW(S%GE&0XT7)
MC,>U9AI)\2PDQ=04$B((I[@AG.>:""TD"(F8$>.Q1X]E2N7HQ:S2N]>R/HJX
MN,_HBEP>2VDQ> JP2\(_:?TVQO;!G=[OK9.*75KV;!909<(K=XF^O"BYN/2V
M%&QN(_\>0OYM3RREG;U]>L!,)DRPG%B:@S/(O0'AEPG"66ZERS*KL=@N6RW4
M/30J6PY;Z1X#/"]*)CSE45'#[@_'[F<S[ [<3'EA<D)-$8AP1A CHR2.2D%%
MR OPG%;>2GKG[/-'X?A[B@TMM96#;-&*W?[IL!4'_>/45&AXSJRY%P"XY[ 8
MBXGPJ:#JGNF*W2L:=;:6+8^?<%DFU_^..\,.2K$A8B:"DP!J97264KL"_':"
MCO@K.YA]9 ?@7,] <U;%/M+>#,*':DL^=$UOM-[SF_6N--K^5MI^'F6/"1FS
M(A)OE0)=KPIB!:A^J0+3AF9YH*#KV9WRN9KSV27FVWNWTAN^?3B^G2E>YP:L
M<6=)#D(7>W]RHHL8B(E*9M[DDANY\E84R\&VKQMC6BV3^7--F+2*DB[T()I#
MYJ5*=;\D'+)5[UP3#OE%03N'[>.CHIDJ<C"0L#D'SSVQ('-)GDO)'$A;+<1=
M#:3FE/B%,?W#);TU3/]P3#]SY.N]H]92XDV,1- 0B5$\)Y1KXQB5D@=]1^OJ
M\8YZ_S7"*DSXVW>^O_V_\$<]J/2L3L^#*?Y&)R9_(+Y*3WS3&<$0W=6<EB5.
M0U[J]+"P#MBL!Z-LG9C#,%W;A1,IY^]@,F'PQ^*IO?V_=O"OM\UCFL<TCWF5
MCZG$C$!W+$'I@<Q^,PA= THS_'':\:.C^IQSYJY2IKZATUN,!4$]'EU^RX7Q
MWKMPI=<9+4F4ZOFEF/WS:% /!H4KL8-@OA$38:QO3/?4G U7_C4WI>-.C\RN
MW_FI7[X!O[R;C^@%I]7:;&]^_&N_]7[GW:?=U=96^]W:G0GRL:?P;J>]L=G>
MW=RH1_[(IG(:1.MQ7G[I"NSN_+VUL;ZWN=':W8._MC?;>[NMG?>O=TG6=_^G
M]?[OG<^[RTC/EUJ'BR?S6Z?7&AWUQ_!4/[R[3?C8>_';IYX9^\XH^ >W9X_-
MX!"$=J6^\GD'>Z*6DG<P577)'8'%Z)J387A3?_BC#I)V>FE*Z:;SO@<X,5.M
ML$9+S5 %4:OG5S^OI9_.^4CE;X5>R_CE/],U=NEO5SU6K7&I?^FI5_\FY8.,
M-;_9>*X)4U\;P]$7+ET0BJE(<)G"U7M'@Q!:QW#=T; 5@"U\XH1M,W!'+<Y6
M;Y/*<(MDC^>U2!A.OD$6S$N>/WV(G):E/L@YGPD6.SW3<_/G./?>)?2Z/+[9
M<-8OY53=]#C_009YKV>!SR 5ZL.@#TOE*P(:'8569S@< Q6%1";]8Y"[,*:^
M^Y:2HT[-8&#N6(+Z#(\#GJZ!V,\PZ'M@UOIH(,1^YTV]:>]AS[:J[=J)[])F
M[>)>K??\YVJG7LC)P#<*S^KN?_5?OVR\_Y:>"V.$:^GVWONO7_[Z3Z?]U?W\
M\O4_Q^=/!G;@OC;^GK6_;7_^F.:P__,PV__ZSX_MS^UO7SYO9>V?[>/VYR]Q
M<A2X2^7VST\'P2B1%;!5D5)'8!\M8EHHS,-0S'@5O:*84:DREOVQ1)@Z#1+6
M\I4W7%OHU+#V [/VSUG6YD$A%K<A@1<%$5)Y8C+%B?>:\8QG66I9FJT6\F)+
MD)<!EO4\S9/P(PQ<9YC,DSM9(\\WX_-)$[5GY%,EAS:K'6GDT:WD46?>U' R
M8X7SC#AI(Q%Y%@DH&4<L9=$7P69*@JDALXMI" V UHMAUWLV,\X[#PT3WS\3
MSQD5L@B11>PR%E0&1H6V1+& [@,0=)3"BVCNS5]8/DBM&YL2,^<6U2,(7@\<
ME4R2)V+4'=BY 4;/7'^86H-T4D[2[8,BY4%XXT0];FCD?$W*3DP.4^U%O<--
M;:3;;:3;V;R)0I721F:<6)V#R^25(58H1@3G(;>X72%KHB'/E9&7HHZLX=F[
M\^R<16(T0V!>3R0+E AM)=&9XT0'&Y6PC&=487+S7; ]'R^^\0)JQYY]0*;3
M<YT3T\7.:8EE04[X,*C.'D.KB^B\K;Z%H9I48/_*@C-/6D;_OMR$OW$/)CM5
MR]9&CMY"CK;/G02IK,@1))ED6!0FF.=$<2](;G7&N:4F("K67=!#F[C,$G/J
MO1L\#:?>(Z?.63S*<D<+9XGV&(-17!!#K2>Y4444NG!"LJ7AU)=O[SSS_)AW
ML\&>T\[HZ"AT4\U\MQ/&& WJ)'S>ULC\*'_N=W&>&#>J:^KAH@%\''3<*/CJ
M22AJ7EL2S5( #'W$^I_@]_I[YL?GZ7Z][P]VC\P@_ GBV,.>8T?L9+XVHO@V
MHOA<P @T9/#6*:),D6/_.$6,8X($RIFWFA8Q]RMO[]+.LHD2+6^X][$.LQK.
M?A3.GC.R;,RR&+*,1)I%(F*6$V!G1@H=:,X%%U+S90P%OS1[Z]D-^.4%Q.HP
M6'52N-7M&-]J]T=-8[^G/@C\&$XFQPJX(2^L1_DC'2CLK<_@PV^S Y%+XW-A
MB ],$R$*3:R'?R(T?&%%8!EWRYCCT 3%ECXHUC#L?3'LV1S#.A<+P4F1>TI$
MIC.B<JU)QCEU3HHL.HU-@?,F)-:8:"\QAH=XER=SB>1N$'QGU,)+6[8_&/1/
M85[#%FFMO]]]95&YV\A[(:1Q#-2\MB(&;8($'>\8&&]YYH6XK_RMF>S468WP
M-XP=_GJ7]JY1";=2"=OS-IR+-GK#+#%.%F##"4^T,)'$ %_H0BD:F[JVU\#2
M,?(8M10P22.HED91;( 7K61:@"MV^T2NAGD?@GEG[3F.8EB:0)3/@'GS4!#%
MA"+@B3$./G7F ZAZ>5_]"9NRM0>U.$J.:+TWKM.]<T?"ERVLT,L$(>2-8H4(
MT=G<,<Q@9%XQ6]#LEO;'E=T&&SEV_W+LGWDC) =)Y:WE1$D08:+PFF@M* F%
M+1S'?@>!IE:KZLX5N$T8:7FYV@A3",,S+0LOG#!*<@%*C'.K \^]?H":MX:A
M[XVAYPP3[1Q(8THHLYX(#0Z%R:DD3(7"%3*74H1EC S?:SQ$+XUI<DWSC]G.
MR(N HYH&($]^L/4K_9#?UUOYXIH#/)94^W3.3,F"Q\,-$L L(4)Z2Q15@10<
M/.8\"LI]0#,EOWN+U*8UR,L2!X^!&M2(@X<7![-&3LZBXSG+2:8H)2*:C%@5
M&+%9S@KJ7<$R@[A![)F(@Y=V>K6T ZXOJ85)B7-P%W<2)&85#'M"B,T'>\:]
M6N5\::SRRP.&OX%D'V ]T.]85) ^8:%!,M819F*FB "_>V7GE$_5AN_&"ABU
M+_Z''4^_@WY-*<GUCN$/ZST__\7,E1]@4?J@KLMMWZ@( ?[='>-&;?YP1Z9W
M&#Z:4=B,,;@F4G$[)?YMWJ:/3F9&6T:,P(.3S'-BI/!@X@L7G;"9RE+H,5.J
M*4YX/C)B24WS1C(LMV28->\59<9H)8BT(2/":$U,T)8$3;U4SOO<.#3O97ZQ
M@K0Y7WVTJLQ+;*+5E@V'G5ZO*KL\2;S3'*A>)@255IE33@I+HQ",PD</]E$L
M;/ \<GNPA;*/94\E^QI1=AM1]G4V4?_;CP-!<Y<984CA,TN$E051A0/)YDUA
M70YV<! I4E%<-'*:\]47P^2&B9RI0!657$BA3%8H%K7Q17 J*H%,SO0B)F\X
M^0DY^6R&D_.0^RP80;RW@HCH%5%!8>Z7"5;GLC",K[S-]<5*ZA=RJ*J>LTD2
MX,M+C9$'/#I9NB7ZKP>:_,L1U5GPA<\=R[4$[1T4_%7D4IJ0%7FN>++';@!V
MT8CJQQ/5F_-&EXU4,UT@Y 7B+3I?$&-C0;RF6H*>U<:"J%;ZOII*/(NSXD;(
M-4)N&ISGSCFMI)0Y$RX:*T6,UD=DF$Q$5SJ=3Q=P:^3?;>7?K*E*=62>!D^*
M0,%453(C!I%G VRHBR$6.3<K;_EJ)OFSD(#+>W@[,V\.C_/],;;VG9OX4Y_K
MWG:(+[<P]9+^G5TS''8B#"<)S:HOYR(OXM=:==[T-.@IGW&OH>ME/^9_M^#<
M_L[1J:6;Y<U-H$53?#&&SGUZ<V"PG#-3UD?OS&!P!LOV'],=-Q 9M[-:SI4B
MR<Q)94,@'+PW(H+W1*N0$V==5@@3(Q?8?$N\P$!Y(WY>J/AY)#^KD4SW+IGF
M\A&*J&5F G%<>B(R&HC-'3;>\8PRQX5Q' _Q-+MS/L+C!?^7SUZG-^*^C_-&
M>:O&@NZ/CL*@!;9\N!&H\PL_;[PGLV<^0--(D5M)D=D:IF_9@>0RR[061/F8
M$2%,1@PO! G6%BZ3T4035MYR<<L#Q(<S8VYQK/^RN>G7M7C#3??)36<SW&3!
M'0BYUZ307  W*4,,8Y*X& +SU#DFGHJ;?D7Q+GO%\F4GZY<9-F70L1SRA;CC
MJSAJNH\5>#$2M#E4?WX"=W_>?.'1%IRQ2+03DL#N@?FB'99@1B,C%0ID\*\<
MJM\#GSR.V=.(MD:T-4?IKT#JS9J90!Y4<>N(UX(1$:DFQH'!J9S4L-U@=NK\
MUX[2GU#N)0/U7R-$]7Y;-4J?:08_\RP'!!0&Y=,[/0__>J,GG>'?_E\[^-?;
M^7[KO_"81V3M#%E[[RBTC'/]8W@WQD=;/00Y;YD!?-UK=6"DAX/4674PPL/@
MT5$8!N1X&/80C=Y^+^T&MKFI(7O@\N$(ODAH5FMW7I%K%K::C<! W4E_V$%:
M>S/ QCN=[^&/TXX?'=52;.:NBM#H]!9C82+CT>6W7!COXT?\THXQ.K\6LW_B
M<)-4,TRK@@G,I]<(QVD*[46N- _":J7M 2]6ZIN.!E-=?QB('03SC9@(,WQC
MNJ?F;+CRK[F%..[TZA$5&0QY>1;L@K.6%FRSO?GQK_W6^YUWGW976UOM=[>@
MR2<:<GMG;W.WM;?3VON?S=:[G?;&9GMW<P,_[>[\O;6QO@?_>+_57F^_VUK_
MN[6[!U]L;[;W=I=^8MMFX(Y*3<#9:@O=G*4?\V^?>F;L.R#A?E_$>3<8\64B
M[&:LBN>\%]]U; :'P(BH$Q]">]R<3EMLK549B.WQ,3S'W0/RP3D@(3,:#\).
MW#D)@[*#]],:;W2[-MZ^;IU]V=L6VQM?ONUL'!WMP_O:G^&Y?_T#][>_?OGZ
MY]=M,,IV]K8E&&+=\#\?S[Y\]B<V$_GVUW]WMW\>GK:/_Q$[?[T_:F\XMO_U
MF\#W[6?MX^V_ML_ *)/;/[MHB+&=?PZ\B2QG/) 8HB'">$T4DXP$;C3S2D?M
M:6F/=WKCX-?1FK84 ;6YU9IR88'(G,LY"T4*LSL/:QW (CY!ZAV, VSI^MZG
MCYNMG?>U 5=MZH1\X=OJ#66*6-J(Z]\R/RK'\Y!1;56NHPA%;@O)A2JHY$IX
M%LT3Z=96/<FG8*:=#YL?U_>V0,9/),6YM9X1 Y<+EH7[<X/UGCSTL1=]LQ<&
MAV>M]WTW'H)^[KFU5N@=@BDR;)T,P $<P"OQ2!-;F?F *"BK\/?WT.V?H(FY
MVH(1C"-X&>,!&+#XS\&WD-K<8H1V"-X>6JXAO86$&#NN [>UNC@$O&IX-@1C
M=9BNQI4;]+O#*KB+4AQ>;GJ]_KCGP,2=>2\^=-P=#<SW3K\;1N1=^<26[PP[
M/40]P,7_#:%%,_K'I_^\VT@?V1^_(\RE'SNPC5N?0_W$>MCEF$.WVSJ"I[7^
M=PSJ9'16/IJ$X\XH#=EW^CY,'O[WYO39DUG5+TD/Q-?/?S.9:+6PX $ FR?C
M?68@QP@ ;@9G^!V8R<>A_K%^]?;V=OWJM=;.> !W#(>)ZH:M41\6';VJ5A]^
M@,T%BSL,TO>#<7IK9]"*$Y#Q],(^;@]\QK[%K4.P1$&)5EO7JK?.G:W6<T'X
M./@7WGDT!C)H'073A3M'1X/^&);/^.\F[1LL$6PGS#AV1M,5218_JI-R[(=]
MF'TY<!O2JN!MDX<3I 94;Y,UKE?A?][]/=F 47!'/>"<P[-R!<OUZ@8#'BS&
M.-)SC_M#()0 #TV=F<W)2;?*N(6I'P5POD#3I8 (C'ZUIH+5UG?,7FG]-D<:
M!B?4,A$N]VFU@6E<^!V+_+YW!OT>TBK."SP\5\Z]6B3T\=!_Z\#(8(G Q3/'
M0.:C1);#DX#$ &R,%(+K,)GU9!WM&7P^Z9J$TAJ[X_X 5$GB2!P@0><1G@Y#
M!)9P1V"OA.E#TF:G'(71V0EL.#!3UQR?)'KL](:CSBCM# S<CCNI:^HPK=ZL
M1/!]^&+ZQ+E%1/I!LNL ZWY/OF UJGK99@A^CM)'8SONFD&:<KV_>S,<!M0&
MCT<&A;_+&=14,AE*Q5PSC+[3:^VX4=_"U4PDNY>NPE-:ICOLSX@7I(VN@<]'
MN" X_EG.;9WT!Z,([G8?B*0#UP"MVH OM(G<1TBY%<'!,J(U=='5N=(B?70%
MP"0JOE[KW^->:#%6KPR,'H,20-"P+.5FG@P""-KQL)6ZE6,G7<QO.4'(8--=
M36OU9]\,4EWK1@=$]Z@/LB8D_!E86=-B!.B'R-9ON,C5QNX"R8Q:'Y%H)@P,
M[P$I%<KW !_@%67DH_6N#),DN.CBCV&BH;H3^RHR4,6@_W55P/1#*+O_G@^<
MYEI);T+P+L<:/0.Z.@JEC1-2,5T'3G,V%SC=:K^_$!Y-@]K%,7TP@YW!+L9B
M?,I[F[ZZ"H+2UV9'[ZW+G;U//[;W]G]BL'7[GP-7*,FEHR1&PQ&2 JN#M"4Y
M,V I92X([5;>TC5@@8OI;"BF6T-<TK461M(6T0Y8P[ _%26"' ))?!Q\!S8%
MA-CXI.K1&D'^E @QB= P7IF*,)+ML@XRW">; QA\$2&>NQYLJ/X A$42ADE@
M&7P"L,$L\5]UTU3:)>;#NS9"UYRBSMA%P*<D*^&N1%USC]V<3!2%Q-0Z6!^E
MQ\S_#%H*5@S1ON&+M)!)%<PR%DBYX1@Y&#7&>#0<U4IS#/:$26'=;A+G%@0+
MYK[!&O5!F@ K=CSJB73[:BN.\;H3TRD?!=M(,#UN.$Q*,[W[_*O76NU^*U:;
MC6'-<H"GJ*#K4<':8A8 6(+UYBT@@I(Z&K'P3,1"^\YB8:(*)@+B EG/6$!A
M<#RLJ6?NFD1IO?X(S;M2CX'-=26-]<;':&3 PX _COH#4,/^,L8:]U"'+I W
M<Z( WG5L$FNA78+ ;AYMSDMIN7S9_9'QS<\%IQ2>R'FX/EF!AK(KRM[YYX!+
M;:WBG#!P_HE0D1.-+3%$X;VWD@J+F0N2K@)IXW\7J;O<X;76AT$?+=)2-AK_
M%3R\LN]X(MMC\'AJ?06T@/2*=()D'WZ@Y3VL7)5A;>O.2G?0- /3JYS5DES[
M)\FV+]V]ZL%3<J]H?$99X,<DVTLZQS=4"J6'7@IJ''!>>LGE@ 'V*I=]HO N
MY3%P[Q--XM5@E@XQU.MK1WK1(5CR7$!-X7S1ATFP*\/6D8$AV!!ZI4N5^ER@
M45 N94B3'(38A8%=/J /<$48#&:X?'85;R$_<,V2K3 <NZ-5N*H_G*CD-%)\
M3AIM/;YSSL7%:-5U[L9- ^#YRB/Z*%=$NK.UQXD/7A.<?-A@^V[GL)=T06^T
M#C[8&#?T\ -XG:X3AGOPIC^[0#-/+$?;G5J.PELWMD^_['WB[;TO(!=1!OXC
MOQS_N[/]=8MO9_NG7S8^_81GL_-RM/W5G6[__+/;WG,,WO6SO?'EZY>-[O'^
M\=;9=LJ>^/-;>V\;YO$?D*.'=&?CGX,,&,D7M" 6VX()CZ@J",UI:?"F,%Q'
M%L['NH/U7DN=.Y59X7W47L?"6R.,<KD1Q?D(_)/0]Y_KNUN[K9WWK0\?-W<W
MVWLI$-U:;V\L!<4_Q8KL?MK>7O^XCVNRN_57>^O]UKOU]EYK_=V[G4_MO:WV
M7ZT/.W]OO=O:G O7SQV8_&*P_GJ"F2>PR(6"KWD>%!>%,9:;HN""1Q^=]=*N
M/+3(^-,,.\.=>$Y<G)5_OF:1T=[[=!#RP KA%=&6H2>A*8B,@A*I9::4IS[D
MV041L/A0&=5N)YX]E8C 74ZP<:7-DRCV)J?W\\->JM CFG/#J<)+4<>2A%LG
ME<JKK=,JYK):Q5[1I1N.CS$8C2Z6#=W^Z>HTI@[V$3PNV9*SSQR [=DYZ<)3
M#_%4(X4NX/=P,F-!?NIAKD$961E.3Y#6=M=:?ZVO?Y@$*LLCJM(\/$G&.=K2
M*20*[T%7KC*2[7B('063H5L._A3<O'26'M;@==WR-Y_\O\HI/07S?#7=/6OM
M5B-LIQRQ22QJ)@7L_<3ZW9U:ORD;J[PAF?F34_QECTXGLO\<2O,7J![<^BI(
M/Y<R-S7Y81',Y)!G=#0(>-33&QT-6V7X;4'Z2]I&='Y;)^,!."S3(-]@W WU
M0>3AN%N=;%1A@GDBV0UN/)B>HM4([$BSU8'<6O+Q33I=F>XG7AS[_1$F_:53
MFFY_.$:#OX>7=-,I"Z*ZE\2YT+69+,N"F/V$9F=<G6GN("Q3'P\T\>QI9NKH
M?BR>>^E]7;7TR>V;F=_PJ#_N(G/"8XRO'+VOX]Z,IX<4N=X#_=MM?0SHSK;@
ME_?PA!:CY/]--O,LF$&UB1O!!?0ZY_:13A@U_6/NB=,8Z%[)+]4"S''.GZ:;
M%F[W*.#A:]KH2]YT9(;E6H);"QZC+]LY)[(L\Y2N3\O$",[H"/[ 2T! 8+YM
MVO91O>/)7ZV([3*20=;^WW%G4/J5T]W&1<--ZH;18H?X63#^5BGL^B>=7@6%
M!(\TAZ%,.K@@!6Z1%)L,,.1%7..2U>J$@_%@D(+;,]&4'E#!<)C.)ONU[FU%
MTQD >Y:*Z7J"&E84=9D 6DQIJY<]>T:XPT.G:5F_*OMN^")4P8-PA*?*($[^
M[@\?_(5)C";%N3L]=AQ6YRXMK"L8G?WZ&/#3S<:!]8;OP<+XY0DOB-7,N2JW
MC]V\VOQK=GG^=9-*O71#;E*IEVC,UZ12+XR&7!O=.!<-\4Y)&SF3PG(1J#$J
M%M%+1U4H# W9@T=#/@W#3MP$E_<8;?-7&?78/Q R2.<S1S*A"R*<U<1R:X@J
M<%\"=[""BZ(>3T.7L&4I1[3>M.=@GJ(O43I?$ZC.A;;FE7Y99;\/9TS;,HGL
M6YBN1C(BS' X/BY/X$K/H3Q2*NW@E#>(W@"Z.Z4OB);I8L\#'W:AXFP-K)?)
M"*P9HM$%%T_' #,\Z@Q'_0$F?+3"#SQ$"S@C?-YW,TBY81/4H\E0;>AVPO?R
M+*UT X?]E)2ZUEKOCHY2EFA9U#8SW4%(0_#XTNG"3+)M+%S:^M;KGW:#/RP/
M]L%LQX'#FZ93G%FK8W-6)V".)RFW<8Q5#:MX)?J*91+),%W[':W]B5<W&=E:
M:R)6:C=M-3EOICKFZW:..^7!X6I])\RU,SRJ$Y;1>QA\#]6)9!F8&J9$Y\YW
M7)75E"^-W\#8\*RUT\,I]3'9!PVTE.!9+7IU1'O6<EW3.1[^D=XX'H8X[L)
MOH<J5HCAGE&9#(O$EG*G_TC9$95#V06[-M$FCJD7,#&V.M$<F1^A>J[#C-DJ
M0W@8RBQH6(+^<:C"2[Z,'5C2#6GKZA?_,3U!)N6F(NF!Q9W>OM;:PO-,WRDS
MI2XG>?C<=YWTGLD!L0^8N0$T7O-?VE5PS*K<CSF.Q*36P7C* F&Z IC[VN\=
MDFYRYDO,KK082#*=0=J[":/6&;OI9/OKV!_BST#,\T3D4MS#=X!'!S4A]8?G
M>3J%6LJ+<%?KVRP>WL/48-C7N W7G6T\H)8%;RGE8Z<E_-@9?GL'%-,9X:?7
MIG)_XECQFF]G\#ZZ?7I@G?19'AE1DFHBK ?%ZPM-BBP+/%/>>!:71_O6D<D!
M[-VD.F&ZN<]"&]=18E?-95KN<)H8#^5:*5HQT/Z]X\<IO H:<Y) <FE&59GD
M<BZC"E$6G>%<:2M%8$PI9EU.J75%#J87NZ:A<'8M/WT( _P"E!^;I$^1[-7Q
M%HQK_8!2541C(U%"*B),%$07&MC+,L]-5#S!:[&+N5+_C5'NXWZ9_H<FT:B/
MQ1@3:EC%WZ<4 LOOPR*]#/9(&<UKJ.=94<\6V_[G((2<@8H#ZHD&?"%N/,AE
MSPEW4AK&0R9L<5OJN912_L##O3E1-!QC90R(HOKH<C$--12TE!2TG6T?WCL%
MG8P'[@B=K!GY<XZB3LQ9(WB>+]G\\Q!D<S6)I.31V$=W;OCF.=AL[Z\Y2FG5
M<=7:*ZX2&,H:Q%36.!ITP/_N3RL[4VBE;;Z7#B^6AAR6^=$S]887*RFK:$B]
MM'ALV*^JVWXD?PUX[G9\%F7,M57*L:"%8IE5GF=4LI#;**WQ#9_=#Y_M<S /
M#14F%RH0KGQ.1 &?P#PTQ%O!<RO!XY(II7X!GR&5W&YG5?1*Y[F,+ O"@1<=
M6&2Y$;J0WM*@FYV]IYT5:+HQ:;PQ.6&643#\08P:[2+).&41!&B G2^/!"]*
MT#AKYH.Z/ E5@O]:Z_-1Z/V23$GI956E6XI#31XR/.J<I%)I]#DOW+EZWO&H
M8G,E(,#%%Z%  G<<PU%W$$(4Z-(918/G0F@:K=0T<TIXX;S-J&M(]7Y(]5"V
M3P\4BRYCA0$"%2"$*)"JELP3PS+.J<.XF@0A5%Q#JA-B&&+5:EFJLM:ZJ:JD
MSU!5>M"0)O>.YE8+EC%+J:>T,$'13 .W)RJE-95>P*YLJ/1&5-K>V#P%*M41
MC \L//->,B)R[HG.F2),Q1 T#U$HM_*67^QJ]"NJ4BO!N#6"%5D$$S!:QHT(
M4EKNO0:/N=G9>]K9'Z J1>"&%T:23&%I#.<9 ?L3-MKX"!Z>+63(057*1E4N
M(E5'J1*%!FLQ:A$RK:C0$O,>)+=1%;XAU0<X*L%";\:,R;2/Q'D!/K*P#!1H
M04G!#:/4&ECM;.6MR']%;2ZY$UR"KSP3+0W.K%.2.LYD$'FFK<Q9P704.@-'
MUYC&EKP76;ZWQ;8/#\!YI=R +5D8C97AEA.-$ A9$0,3P1;*1V"*1;+\]EI:
M4!$UAZW*/1-.:ZURT-0F!V,@ ^<K-CM[/XE9$R2 K+VQS< 6 [O(T$ UD2QJ
MT-@J$*- ]-D"G#5KP7&S'C3V%:+OTE.(>2V^BN4&"_(5$RA,G7H^XT)<IN6K
MPI@9D30G7F[IG&:%5 +#H+001EDMI:/2RSS7!?A,YS4N>%$-V=U9XS*$5LF8
M!Q$2B109.*J.YT07H("Y#AQL'YU+P5;>9HM<@"H:??51::FG9HR\1;KL#H23
M":ZI9U9Q[816WK#<"ZH49\Y3YVU#. ]AJFVO'V1<2T,C"*@,/8P8#%'.%(0;
MRJ(TW&2A ,*Y)!AW+>&LM9Z%O=8+*0?NJ)\*4,NCW7NTLSBSN<M<SK,,=LP(
M&[RAAA:<\8+F2C3:^/ZU\?[I#HA%)ZUU+B<TY)P($"=$Q9@3!:H)3*/H?2&
MNA=IX]O;7)QKPY7,<J-SQ&LV"%P!,IGZPA>QD(V[^0"[? 8R# ^YE9&<@!.C
MP.9BE!CLUN<+"Y98C)0'#;M\L4_??Y\WJ>9.9C$?NN<[HU2\>UV)6&NN.NRB
M74:37;; 7L.DXLZP='$7R"#,S@7IY/O'F&;J'D(Z,<P6=3)DA8@"O#XM;![R
MS,A,.FZ+YD3A >CV'X2>!PE!B^@MX4$!W=IHB#'<DDQS&XH\9%:;E;=<W\\1
MIZ<46]Q;4U#A"F=X$0W- P>?1.FL\0@?8I<Q&)8#$P7JP._G7.)QIR16AX($
M[E4N<LN$SBY+&*G$T34I(O/!W47NW]4RYMXD28!765IDCDGL7!5, <)79=X$
M#627Q\:*?PCW#S2@%446%)[[..=  PI+%/X1C0E6 ^'I C2@$+]*8W<I67BR
M%/B';J 23F? F0;]$F\\%:,T4$U5T>)7=V!45N24HT=I*^-,<YV1W 3!F+"L
MH/)\N2F:S3R/06OL^9E'%50F8!- <VGM@CM?9O$Q-968!P6:W8_+VJ[<U"==
M6$-[_2#/(8J)PA3>">' /9#>V6 Y%44H% ,_1(@G*KW?JH#B01SG98';%&]H
M2M^(G=#S9N"'%2)\A0FZX(K6IY,$@-+NKZ6'$L97'QIT+CWQ30>L]HZ[29+B
M9(9;,Q5DI%66.R40#$2)VNN?@-S@6?[[F]9V,(CB4]?\S5^)Z#:+'GEYSYFG
MV.E+2L&O)<LZQ7T&TPO!P2L8CQJSI:*"!%-3+DYWLCBS=7IX;(R(2?!QZ/HG
M%<A[#Z9X..[X*BUZE(Z&4T5=:9 8>/^D?!0=LP2\6KT!FZ)4-7@7WUUG["^L
M&ERM2CYQY*4&G(:N*E#<29$@# 41;D=G)82LZ\-J_$P=':?5EI,ASM;9IBKH
M>LCSXP/+)H%5'Z6^D*GBM9Y5F1\T1,0HN**L BXA<? 4L(/#*XVZFNU..]TN
MEAE.0?%3N2,B$W2.RP!N":!40^7"G>4C$YC&U&AD,AF-65F0BD^=XJI5J]$R
MOD0.QKD:<(<]$$;PY5EE;8SB:G3*ACR8.%!5Z,)F(O1.6I2J7!,7'Q&1RF+>
MJN:SGM?:1>ZY34SQ86V CUB</ X?2VK P35*'\9PD(609=IXX@PF %#C$.E=
M$IE[S3"J$.2%]F5,QZBRG&DGG7"1V4)E8+B&HA!1%F:):BNK75_RR':)U#)3
M(EE"D W*P0_+"N:+R3BIAOFH<W)2=Q0"V>13'XVRW1#('8SXSR([5$V$RGXZ
M597[6JM:)6RH<UPJ3U\BI-78!B5V?E5Y78+'A4I05B(VI-8>*/ K[+U)%&X
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
MW6!P"=Z'\)HEV*<?VU^W#PIGBMSE0(*6<21&,)\Y,^#-6^U8U(SE O,HKFT
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
M+[[CV]/"77L.[@IJL%=1(.JY2;:X1MH%C0) D\>ND#'$M3=X72SP_-X1[&Z
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
MU3!9P^2+\['5,'EGF)PQ6RX=-\)[Y$,*V0GBD2F\15I)&Y4JA/,X.=,$P[\
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
M]>"=JS[WOKHZ&I3QFKG":>49PUPYP71D&A15".MI32^?0T=G]#( A[0%$4B
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
MG7! ^T5A F;:%=IP&Z-1KHHK8W+!*<<FYFJ(_?9"%\1.0K(P''V$46W'6#J
MTB]3MQPBK\V.G?GESILPAN;IMT(&0[!V2#,C$'.>(66P1CKU^<3"\$#3.2N^
ML>#,PO^L5_9%$I,Y+IN$',L_@%!V2BIY641 @$:)[O[;[_R;.2AH3F:K(%6
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
M(C',>,*#UCIX)T*4SY[;16F 1F8 Z*>D"+R4X\724ER3A4G(#?200>PV6Z/
M&@KG'9*2BW'S]K0D(B=^_A@T''X;.#AP+)J\Q1G<>EA\;B[+I_Y&C_C= '3,
MH/5G=]C# K22$KE'YHM6/"LGDZRHDL9H0UG.4019<9NBLNO,UX.*_,'%+EB/
MR3$ME"!214LD-X8XJ14)0NKH):T8MGSQZQ*_V=I:-451>\M+4QZK)S#P5'(:
M;7!>2>ZCL]E4X(9D94.RTJT3&%_.]: [;PXK*R0H9TYR9<#UT#$1YZ4FR7@I
M,-D &_'L>;4HH'V/_(42&EP:(2I>2<F\-L%2+R*O*LZ5<'&=O_AB^8MM"=I1
M)1&-9(F .<:(-#D3*P,E&@X[_"\H8QWNMKU;^F(I#C2V6)GB +\'A0(>FVN<
M+(PV?RV@$#?T&MPD-2_&=[XSOO'I/,23%B:$#M [HO(^<UZ19#5 !W>,N"IF
M$K.(VN;*&5W=T&/^@ "QWN4OM\N1)^\EUR1[$<"@EHR8"L?G8$#9Y$KE# ;U
M=?6P2%\,P*T;'*]H<M10L] T'A?D/$2NI_:UFL3,%T_V@.VU4K##5I77FG(X
M%5$B3BLE10:_D[O$G/;KC.Q7,[J/+N%8N*BT9-P024&=2BD=P8EVQ$B3@D@N
MA@2:E"^(=8PRLANK5SD_A!"LR\7NL>-7NUN'6B1J98[$Y8 US@*S-\B>!CLN
MDM18B+.P8&QC$CL>F3[AV/6.ZE 3]CZWSX[NG9]?#(RK9.A_VUJ2=+\!>>^=
M@KY+9GEY /Q7@/'NQS9FD$OZ=/31;Y=I7GZOWT4>9&'X?EGWX2KZZGZ%B42M
M&)OOC_#KQ;#7FT:I)Q>#GUAN5WO[@>]M'<I*^,2M)(I6GLBH*V*3Y\0S:V),
MPBN!M8F;UPD>Q_%X-%M6V?7[U2>N=_UA7/SW8N?-(;="!*T9 0/%$>FJBCBF
M/3&)!T&IIYHA =3F]6&NDUU?/2HX&QNX>U)P95RY7QA@+6$/@RM'ESL7AUY7
M&#,$@U<(3F3R#CW"0#Q765@X_CS39\_I0^+*_<("ZUU_(%R1>V\.*^VDD(F2
MRD5)I# 5,0J\GLJ!/U)%HZ,VB"LW%"]]-JZ .=I/4]PLI::@E] JFPPU>]$%
MR#G#C##\5(;"%7ON-]<IEMN[8\QSN6)L+KP;+ $)]?Y/E4-,<"RX\R*NLP09
M:%I-DM;]S:9"HK4WE?7S]2V,Y[#!1=UIMS<H 51L>VSWL6 DI*8+=M =N Y^
M\)$97N\GMUUB;<U=O_ITCNN^/C1P:'9>;@FLVP;0<H)30F7 ;+3/!-04)4Y:
MS3RW0:F,4'G=:QP?FAOJL%=%T7OJ3O'PHO'D@D8SHO'J8O?-(2R]867L Y,1
M.Q83,1GL-!0-+\!(JRB(AE@ IZ, TLTA@*4(M_$8K?HUI-Q!#P<L<'$ZLT@3
M!VDQB4AO461D10!)J*V, ?EQ7P]2[FF8K2'EH46#HF$>&9Q4(0FKL!E1"4H\
MSO*"'6(NT% Q!I B/Q-2EF1IOH=H%X8SKQ&:@0%YWG$AU0F:K6%_ (;D[+LN
MZV@C1FYGVD'@;(Q6HXE_,E..4.%>FB2EL+XVG=5%8+TF[50'5Y=\W46Q0F\B
MW[2!9Q^\]-D+":Z^\<$H'ECEHY0J%CYN9A@OJ8#ZA^N4?''8FZ/DNZGN%4Y<
MNU>BN*_A?KKQJ1VX*?*EG2OX^^A0!&\CMYE422NL>+7$.A5(ILH%*5(*)CQ[
M7K,*8,1YGGAS8R6L]3(%,-0TU2E(9RJ7HK4NF@SG3ZBD$6M'.[VN=_YJUEQ@
M>UN'(D4AK:U(U%GAP ?0RD@I4-&@8_32:<N19>0&[[B7/G8['\LD9O0E 6GK
M1/-L%:F+'VL?<N*0EK<C8L1A&C?]-LF1QDE]70I"L01B8^28POO/A[[3[A_7
M&+6L$O1:V>A&71SJ6C4?\NJD%]P(ZGV5?"69! O22@ OG8-7S 26_4+HF@@T
MO[D6[#?7;_??G?>2BWMG_W&]-BHQ?'+VA#.85^_5+M@'"2V *H$W6F4B=<X@
MI#J"_5AQGY1/WBPK%-V?:2FJ*XLG#D;K,Q@LP/'!^Z*1TB!5Q:W)'CO/>19"
MVRHT%</K M OH,,^@0Z3EJ4$BT^8D!SK>R@Q(DKBH@")2#8G;A&Y%I0R8 %Q
MC&56 N9<-Z;JTV<RWBLCQ+V,FQN%8Y%>>]$]/6T/FIJOM72@=(1/NUN'H+(4
M\YD2P -+D-:=>)0-I[*M'%)U5V8Q,TY3]@GKV%XQK;.V;1Z/#%SMO'D(>Z9I
M<V]J.FYP=-!L:<P5G\"B.$,5 Q]+#C1+\_%OX HM+9':*A W6R'U%-VAHT\@
M*$9;&K-71.N<0% 4)4X8$!D<"@4*/%&JIEV@_KP/-"GDN4%$IGNGT+]VWTRA
M+)6*=2WQ=0'!*A3NK981C,[ G";2,TU,Q0.A+NF0.*N4+=GB1?2+R_L'&DWC
M/L*+1[.$GQVLPFI2;45XSMUEH=9H7*,EY0G+I&_5 H7[V;/K5/4#F;18LDY#
M3%Q+1JJ$(L=\(+[2'/OC<C(^RV03BMP"NJ0;4]6TIH]9,&GCW+5C:VY\T'I"
MV?2$,KZ>4+:>4/;M'^P'G%"V<"33K2.6YD8R5;R*WE(;-4M2).NLH<XEZ9C,
M/$7Z=48R+<:.E=IDX,&-#D((165FP3NKO(GP2%Y1:F_KD%A)#8^&E>YE##V]
M^H2CZ8?M_C'^LDP&>+(Z&? "2U&C,J(R@A+.G22RDN ;9*I(C$RJ')V.%BEV
M%W"CCO7PH%L:)-*-)EJ9>M+45*%OL(K 1&,PD0XNK4U2T^R]E<(+!A:K5]:8
MQ80%*R6P9P.3X!-L%<_XR6:N=U]N8P>5"E$)9C2)TH2:F-UP+XE.45<*KJET
M!.E8P-@]25=/=Y: 6S ?CP3+[**'M%7=O!K_Z>?"R"KB\7</H'TO9X21G,"8
MGRES0"!YRI(B=K<.L^,ZAQ"(2!FL>*T5<8Y[PD2E%3<N.R>?/5?7F]8G@M*$
MD7KIU+5+?*D8VX 692*:"_\%X"Z"4Y=>;K9^Q_[.L3 !NM3[62?JCERON)K+
M00F39(5#;98^S8[9TW"/Q[FX,7;5[NCV()VVS/BMDU%D)9%1-RP5'K'A.7P+
M_MOU+ELOW<"-KPC/BZ4&)2=3QZM:;]-YM_=]="7=>?&O%7-<7_?7KC=H;6]O
MU*NJQJNZ5WJ[MB>7OKX;[;I>X\T0+E'&D=1+B,$'N,/3%J/DS;ABYK_C=YV7
M<&"K;C_[<WB66H*.?,7<[M1452,O4CS*\IDELS&[9V62-P934)R7S<;\VN(R
M-[O\F\_BG'(RN"U50;;H(BSO3BN6[%*?>>6$1MX.;KB+WBBK;6 V"!-="5Q:
M*K@EHQ_N;\_VNB&EV/^]UST=J9^]_&[HNWC@$"W_ZIX=[8/*1?!ZNL;M/ES[
MZ#"#.1!8LD0S;8A,.'$$<R4Z5Y6@2GJ&;'?LQBZ8HR.$LP&2$P#HM,\!ZR99
MD_[4PJ-0C(_>.>P/B%*9E82G<(:B\=H9'7-&HBD-KX#^*\.6^H4H$KM:\=L_
MEKO ,K@28DV?TNGYH*G]*'KSJ T&[ B"05N.&F<;Q=I06F(YW58HM\^L &S#
M.K;3@H1U#<&UV\.J@C1%=C]  LY"(;-JTICE)#QS/G)OI/+*4".<E4DQ4PD;
M_?Q1T>(ZT^UUP[V^X3Y\_5XSG+,VYR?5!;7[]X3C_)-J*/C]D=C;.HS9XMQO
M3BK',(,L(S$*SD:D<%BRR98&.!N+(O[GA2L#]A<V>]#N3*M/9NO4S^=(B-7"
M.^54XCBLSMB8M I:^0QNAHJ-A%2TL>H9TVL)>1#$/+K8>7/(,ECQ*7@20)L1
M&6-%//>PUA5XWQ7GG@N.#M\"L4!;+960\&;K]2RM;KM7DP=LH%7UIP-3MW=9
MZUZFQU97M].I*Y?<.1(( ,[ZRV+; 0J&?XZ[G8BC";#DKD'(,<M[?\S(CK"5
MVZ&1O.VST.V!-5B;C@W#S'40GR*@N0Y](,XCH^5A+15^)TNE]66^_&YF4LG>
MA3 \'=9^V%@#E*W&V1 KD9M7R:<4F&.,R2I+'V-4%#1!RLY7U#=1G+D#?2?K
MJ"1\MR9W.CK8>V?3EM'3MHA.MI @A3-K!)62"#!4B72@:+U(G/C A#'4>YWD
MXLZ4F5&T/X_F&)?VQQ7MY6( 6%Y5Q@891/1<@Q!XY[(1UIK4!&Y $!9"_-TE
M8C<-INUEL&VF]$">.NLH&?O=U[TFMO,. ><)2\JK3[MO#H-0U@F!-(25 -LY
M<^*<4X2F8'T408>J0MMY>8)VHT[,-V9Q:LR",-X"!.-P^]BCUZGW[MCUTH/
MR2V%R5,R,1&5UWB;D\ID^O3D@>V!/&C#+,.IU8J#9: M(QY.+;&&)4TKXZW4
MB!QZ@3.%%F,?]W RH67L5MUD(9;/]!\6/E:K1RQ0L%UB B_!>3H[JNO(BD#V
M0<V6E_I/5C:057YO?^MRYVI;[)Z\YZ!A3.6"IP9\[D ED4Q4Q$7'P><62::*
M.X$47'RCHG:#+IJ&56_Z,G;X=[#^Z,#.F&ICY&Z5_=I .JB&'ORK(<L"SP.+
ME[MGY99>N]Y>KZYQ'XVD;KYZ+3DH.6SGXI#I2#G8(:32#! FX90"S"-PEY3F
MUED>2]<L&+T+&F<G&#.:6#86E3GQ&$5;1C9,NS\3NL&@#W*0$0 )DI&0S&.[
M2@U=$^%$SR24#:X=E,U6#1!%:@MU61U<7L::L1KH!0'>5\6DJU*2L:*.>V&%
M348I\,DD'X%>XQ8O9&>^,^A-6TEEQ6JX>S%2Y$]7%\Y(+7C,NT>'660<7PQ^
M<J4LD=0P8E,6.!P(W&>=DI5@40.4;"AY*]HM$]EY2ZK(XFH29"U']F@GI=(R
M\&1BHLH@GW2.UD9^ ZWWBH)3CM&L,5T+4*U'WY]WSR82]F1%:??D#;)]@Q\F
MA#">).TI4H&!Y!CEB1$5IK4ESP(Y2OF&6!!TF9*>62C:[4[9V?!Z*&0YL14G
M$%67>Y=ZVWX#50L*KZ:&\8VI*5:3.TJ3HV">R5Q%&66V58HBN<"LXU&Z>DPI
MH[)&KO+#&KF^<#_L_GN,!7B166 Q$0X+ Y::T\0*[DF5C,A1,ZT<#BS=J&#3
M*5_ 13>1OB^(6]K08  Z;7).@J5OC 010GI=%R4HP=%,O,\7FS5NW4.0<*@4
M[$(T@6>2<_2@ ET@#F"+\%!),%M8%1Q_]EQ(N<'I K+E92#V>1/N6H\K6[\X
MPHKIMO,AH&YYT#%5^:CP93QH=#XJC2?$M0'9P["/C+H]'&S4L*>7:'>_H;C
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
MN=:QS7S:2=9J5&U9DE\C=5IT\/C[FPGI[TZ1T?6W81]'\(%M$,'OG_2XXV"
MY'NEOHZ-64[P*U<+&7):6:]M@C,%_HH!E<P]!\NB\O";$:L)&[&:S"?O5S%4
M_\!._[^Z?5BYO;/9$49SX>8G=]"FRZ.N=C[MO3GTE1:99D<T&+"8GG?$L0RJ
MFGJMJJ2RMN;9<[. 06SNH(VD"D4(9+![.BI Q[+>^N35E<3-BR,QGCYG4[-
MX-SL@170D#.LSL-SW8==M?.K2(9CUE1,5BD8*W6J7&6CU,:*)+TUUA_JZMDW
M+S+ (%++;-XX4/A>!W#V7&V7C=MWGS#1U^GVA[VT#]?_K5/87[_M0;H<':3W
M_.#DZ-,N'H23 [GS\FUG]PH.R/[1I[T__NSLO-R2>W__#@?F;7O^('W8_]#>
M>PG?]W*;[YX<7>S^\5[L\.U/\#LX?.\OX%"I@[^WKS[\\6<&C^_3SL6A2TY$
M1L'+4S@>6'M!L+:<6$63$-Y5S%X+PR2JJA@9K"\+,E)JJ/9H(8-IP3QS]ED+
MD-Z=8U@,7*%GS[=W7^SMO&KM;_W_K][-SQE>0:(7!D=NO9>9,-TYCJ\!W=FK
M@S";ZILU06[UT2M,_6%G/(N[6X-%F95;(] ,@]?TW.V[(4A1G+6S43S3DC(K
M<1ML= ANE#@KOZJG$77:I^V:3J;53P-$Q,%QXXZ_:QQW8?BXGP&5\ED98@2P
M.40HC*F>,F'T])2)66Z%MR\F'GA[4##VK#MHG8&/U.^CDBX-& BZ=6U+$P9
MT^+]YKO-5DZQ#!]N8'C@/BTH6+U]RV_)NSPB65DT];;>W654DW7;%2Q?Z9%%
M7M1Z4QTR[A>C:J+5CM#8&)3&F3ABZX$UA>T#$5C4;OSX5@AMN44/.:.^<: ]
M2-;PK#%P"TG2%.\2+L"HCKA((%BQ5W4/T()UV4!#]=3UX&$0'OOM?CFZ4\,*
MSN  S9WI@/6\R#):ZK!K&W31?;?[R$!:QY@F([;'ECW8P2746MOF[E.A8FI.
M UC$)P 8_=BNC^NH*:\>?P6?^ AG><*6L^#)6A=MD!E?BPA.\H:K+T]#_1CG
MZ]9S=-MF?EX0G#LFF3/4FYRDU)6A25-M1!2.VRJ&)9[[:K5U]4:#\;-5MGEO
M]#3H9Y1"\Y%</IY:EJ]L$\'WLD,CO6+:2*(4!OW U"0N44^HI#G9 !9GA?P-
M3"VH+9_A^+BNIC P?MY%=WBECBYMO:<Z<5&Y*+E3!NXB*RT5SZ*JJF5QG;5T
M/+#%C"S ;PY=5<E0!>30E#@@U05B([B;5;8^>,:=MNS9\XK?1#6%XM%'3['
M,W@?B\7DY\W6_W8OP+;J;8RT5SAV9T>I/QJ"&.KBXA:&]L, W)F-ST"A>\8/
M[SR<8P4A>XT%F=VSK8^NW4']LX6VZ];$;-W+8$4V%BD8I'^-S=:G+)ZOD-_"
MBFA,9(YX*BV106=BO97$!E!QX/['Q/2SYWI1]=U8/!OS?JW!OD<AH" $#Z+#
MP AUH_.WW'F$<SCC&DX\2+!O%WBYL'NM%\-F5.Z?73^>3 C24<WXB?C.F6SM
MK09UZRB=X<M-B!D^CZS\8$NGH_998?NI'V,N&P??&[!^_0SPLILS.KZ&_FN!
M;8VWC.\$VQB_N%W'NXOYUP8W-[?A? #HKAY;_H+(.SH]Z\.R2*&/8LF7< ]7
MH-PYCYXQ RK=63@XT1GBJ*B(8$Y704CXVX-ROXG>;=6L'0"G9B910Y602AK'
M*\.R=1$CMMG(AMQGO?=?=.]W+PZU9K#B,A)%$PY"3(H8)&YSA@&*8J\F=<^>
MFYOLNH5>?YK#I7&I2,VNV[ NMS\FY 0:^=[]H3^9XF(^ T]W"EF;D-P(3TL*
M;3N7*-IPT,:P1:RKOY;BXY@V[3H6KEA*+[QP3A@;=0[2^NR8$")9&X4WR-U>
MY+?Z6IK_7;UN^]U7G\[;=>[E"<OX 0=C0-F*5A;S8SEF)"0$8R!H2[0)3K-,
M*] PSYZ+ZB;!;L3R"-5J%[.Z[3+9JPY$3CN[8P\7!?S8X2B==#2<_M0BWV?T
MJ<U6F3%?1RVQ@6S8GZ85'\6](AZ:0:^.<!7>"_2%:LD?&R:W6@O7A]+770%\
MW!50IXOPB*7^]3GT]1DL\^O-^"-UMT<;GFDJ$U@ZGX9@-Y5_8X3[I1NX\14;
MUJ*""UMU'+X>:7^7[H/%](X:FP56CLS=+5^('1F/(E]HQ^OS+:*&7VE.Z^+G
M_\)YTC($HV'@KWE\ML[J"7B_85BZ*03J/Y+<J=@9%R%L\P\ ?CM7OYWN_K'S
M"8L0]O[8D0=71Y]VKK"PX,^3G9=O+N#GZT4()Q\Z!R<[5SM_'-"#JU>7>%\'
M5\?PW:^N &SISNG.!;) [;[\D/?0:-@Z9!I<W! %4K( L!ICB*]\(" ON1(:
MB0+<?.ZT,CIZ+UTV54!;SU:\<CR&#+\"9]G/YT[?[>^]^+__N_?7RU=OWXUG
M(;QYO[U_\-"9U-OO;/9)C+8Z<JHL]0%[_#S#,;.52293\#W9LV\(#ZQ,<E,E
M+]GKIV8RS3MP7 >/O ]@1%Y0)JRS<1ZB?9U=[KR7/K:[P_[TL.SQ(.V-HE%^
MZS:9B9>@>,.@"ZYPRCF%N@=@M$B]9I%JNKP^+M*R48S3Q'K3(Q?O,\U5:VM4
M="G%H&6(%3(<90D6=Y#*,-M$C*AFUZ?\?+<S%[\Z4DVY.5=P#Q10*U0&6RLI
MR=D!='G%":A\3PJY;.(A21ON,'.Q#G(LDAV? NQ/(VDX3+&PXZ;6J_$O\+#4
MHV/P]QG,MCISNF"@^]9HXOM=!KY/:!=?IHZ[P*+$=RGT4C&Y2HNH0ZK&K47W
ML]'"1[ELE?&/B^<3C0@/2L/I%'V6&^) G@'<4Z<D@T\]G.B&9*1[5C*\[0BO
MU!_?*-;M9=/\#I>"]268>>WW2ZRIGFBY:+Y;;G8!X_WU#99BR-%=78^U+=B=
MIIUA\97 M1IT:B<UN/YQ09U1'6AQ+M'X[J%Q.QY35/#A#@&O-0@\&A# ONO/
M!($Q\$]&L,Z?E7)(:KK?Z0KCF?<4H4.Y<B.MU-3S+A7<NDVF)-N'@^-NKY!T
M+3FMDQC)C9C1*U3PQ9^KDVOQ1H+NQ1/K[B_&*TRL&TMX/:-N:[P":\EN)!NG
M:RKKO1&","4,&.59$*LI)D%BC%Y1Z:5Y]ES1#1!M_&_9<+KOAP.QZ;T8L1N6
M;/ H]%"*\"Y2IX-_US&_NA!HR;N;B$W"8S'H=5T3EVRY>#+L#T;<R+E30I/+
M#NKWL'"O>]WS.L>,]%CEZ>I83<&D4Q?32,=-3;=#3$N?4B^T1V0UX_%XT_9
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
M=^N0YXH''-V;X7!BF8LBCC%)&,@"X[#O(H2Z:4O><%[KPJ_'=VI_>+OHX3W
M)K$@P/:,W2'F%8KQ^30C,^N"O.\5(2^G;)+/*^7[UI&91WV- EC_+JG$Q\WG
M.I74;4W&,7_9?.XZ9?O=94&_JYM=IVSOF;+]/T\Z5;G.V:YSMNN<[>=Y!CZH
M2KI*FI"]M$);K@6O8O!@;41*J_EFV[5G<*MG<+K;/OA[^],._W!\<(5>PMM_
M]O;A,R=OVW!_QQ_VM^GNR19X"\>=><_@@/]Y? ">Q8?3WT^*E_#'&[5S==R&
M9Q%[?__>P>_? 6]A[X__3.=LK^#WZE!%647#2G^W)_"S)@8CEHDIG41RQN2T
MG$?Y6WL'/TJZZ#[Q2D9YS%1%<,NC-#(:)7,E8J0N>\:=:,B>UO'*1W#FKB9G
M[OVG0R5%3BQE$GG.R,VAB?=2DFQUHM1$5>FTSMW^(#'*=>[V1\_=1I4,=]JJ
M8*R4F5N:%..:):&"8UZLK:%'B\SM.6M(!L,2=X$$;K"CRU.<4D*)2E0D"[:N
MT7PIP^,CSM\^0I1=IVA_[(,U,GDN=ZZV^*&-U&?P&8EU.)5#%^YS:XGC- @6
M*);^WIYH71^L=8KUAS(=N JAHF#F.\:E#<%HZK6B'IQO&[AE:]/AT2+<Y9SI
M8,'D2R)Q @8$!=,A&.*LYB1(ZL ]9[22_MGS2N@-)1_(=O@>4J1?*,WZ[YD.
MY\<X._1&WJ16.8[U'.'I$/SC3"$7QBN<O%=/_RA3KV:G1X]9-/JMU"Y#03IM
MY]N==AF="V\?\_&/620 QLY3G69N."!Q7"XNR2P#<7/MR7#?S=%HU;GO'AR[
M0<,&T\.OZZ6:!::?!H-.P\G?&S]$BO7PKO[,G2*5(+ZIESZZ#O+[PR6S:_=:
MY9_XK^3"\9AIL%\&!^ P@59_Z/OPK0WG/]YX&Y"_C:,(&SX7N.]C)-WHC\A(
MRH5/7>\?N$9]_?E'+G>2.RG@[3:?"M,3#'#^<_UH.$WS//5&LXOQ2V"+4NNG
M9E3,SSCL&CY11@R7ZY2;P:M./> 4L<ZR949ZG>YP<&UM"P-//=AJX3(W$E#/
M#"&GR?6'O697EJ]JN]\ZZPY&^QD?V<#CY2.IIZ@]1I,BFNV[D2RWF4I=1NR.
MU[,LX%FZON+-%=/'(G3']6CT7EDTU\J K0[?!A(XF(RQQ<&8W<['$;?-:,3Y
M3VGS:'.C!6!ZE'H;8Z)Y%.H!SK]VG<YEX<L!U$J#_@8<4<PJU^-=-O" UQ/S
MTJ=:K'Y&!IU4GX1V?_(L&]/RW1"?-.<$OB TH%@/ IDZEQME.,?Y>;>AD*UE
M::,94U1."?*8U^<5O@'D>2+4_9L$K)!%39_P>#+L#VJ PHL>G>'L]GHN"0Y
M[IXUARVYWAFL8G],%30:'-+4UDR?XX8@HX:P\@"N==J-8_@?G?MIW&OWII:I
ML.'":>E^3,U8N2YL0$&7>:'HGM=FY^B8=T,]Y:DF3ULJ%YNMK7X9,+_1BA/J
MH]P=]F!]_@L2.ZB+":X_W&B;+N$W9<TFF]@^&^_5F*1UAG#IK-OJ=$%<>BAI
M)\VP]#NCPSPCRD)VUSL Q/K%'^7%$=0_/2I?O:;R75/Y?OL'>RI4OK=2\\Y1
M^0:OO;:VLL91*9BS05HAN(T._F7U5Z+RO?;\Q24M'%ZD]@["%$?@]V!K+[OW
MT8#,8@L/!KVV']8EQV!?U/Y,;2?U&W\$O-)VJ!TJ?!&#=BU7Z.<W6[^C_P*F
M;W_JN^K72@7UV$H<?^>P7XANX0,]A_=*\+Z1K+XW:%_5MW>:P(E:R9WY6HQN
MKT[/.]W+E-ZEWL=V2$OH(SN=;FVZ[N6W8ROY-=Q:-Y;Q3$^8\>UJ=^M0!BYS
M2)G $5=$,N.(C<P13%)ER[TS5CT*QK>QPSJI_V]*\X>GIZX'%^G/R/W",S8R
M[=O@2X()#T<'NPK0K9D$)-"'+8Y+D9'^U,C'GXH;6W,<]G]^*%JXZSF:Q]=U
MH.6F*0C\Q OYM;WK91=$DD>[!>"8'L<[/[?AP'Z?!>7[UVB2RY$=]QS=(</Q
M;=?].RWDG[&QGUX? P:DOKAH?0-Q_2$Z+= 6+'%DU[G.%'GO<M+YF@#:^A[6
MXG^^W/-_IQ41"X:X\915E2@XTUIB 81,VG.6J@CN,O@V=Z KG_5K&D<EQ<5^
MS*O:@OW>V<F;PH??VSM7NZ<'I^\O#DZWKPY.WGS:^?M [;Y\]>G#_GOZX8\W
M\H!C(<1_VM<*'_"[^(?VA_W?V@<GN^WRF9-_Z,[^[YW=_;?_?'AY?'* A1!_
M_SG+=Q,XDX)'1Q)+C,A(,S&1,Q*$H942$?XR@-%+YKU]L1.!KZYX,AZRX&&-
M;&MDFV_6X94,CE?&8Z>'\I8*JS15SG"J4U*W%'JMD>WK(-N$7Y$*&0U7B>AL
ML)Q+6^(2XT10EU1*QO#$GCV_/G'FNT*V'\ J7ERB6^,FW^3JD6/GZUXW#L,
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
MT<[?=IRZOL=#/;:\2'>88^MA$KJZFP:@)AH.-Z+PAU^66P/]I$VQV. $#G6
MAL0I^NQ!0DL8T"GI) BG3;.C-/8(,4]I#V-VC>4%I_ //B^T@K+U/5'6$#\E
MZ@0*8_B5<89O%OI(5JY)=2"I^I[%&+-MQX'[SQ+.H\#E3N"GD6&'MS#R!OGQ
M-,\6:.\CK4?^A-.4I-?3G:*[XYV_3<M,?!?@US"M$!EWJ$=V$.B6Y21QX >N
MES@__+(,QC]I"< 2D 421)H5@#FM&I:(2NO1@I7Z("S$;NQ8B<-\%KI1:'$O
M<?W83R(O[6GA6]*"?7C^-XC3B1\%B>X& 6 0D(;.$L?4(S-..# "E_LI<.;E
M*%8"(=S.ICU8J_>\1+1 0BE0> -T*EAMB^@BGH)KHVR<25/T=\44:XF*ZG4<
MLJ_9N**=GH4UR.?HZF_?3%"DL_7(24T=Q0B=^:FCIP[L<@R:8V ;6#^A@WSR
M=#6;^I6?9Q.,:%+,3!!,PJ[5U_ ()@DK!/G(RK@*FTALFET  =;<J=->?R^E
MLB/>ZRHODI)/;@(CRA3;P5NB-$KZY0]DH@?EZ3SZS./967X(6\'0#WC"$SZ>
M"K?L"Z.R<^-X[\ ]W(NOCLX^N4!ED>.X=F &.DL]4!]\(]&#T$N RKCK&2"J
MPN5?M*$G/M)@E**UW3%8&J5)X@21'SLI!W4#!*LR^ZK=;.GO=&@M]%]S,"5]
MFI<9&;\+/F)8ZKFNBOS3#ZUOR2!*H_X*B\I\-)^M_DI7">>G4%FL8&%W&O^]
MJ-K230$B]0@8PA>=>,);-KIBU^4/;]J%JK.)&MRWX.V;L_9N[]_^T?[)^S^U
M=\>[GTX'VL'1[K*2N6E31H?EJ79VK)W]:Q^#B_;VCT[W*<SH]/C#P=[.&?SR
M[N!HYVCW8.>#=GH&?S@4SJ\-7UA'Q,W&S_G5IPF;)RC<O.ZZ1"N\AD_J!;P1
M"[IG?#OF"F%O&5BEH:]BWL#EE;EXL& G0;6UX/^=9P5O.<- : 11D_.Q-I_B
M+QMB)^R0!6YB]E+<7/!TO7 3HH.*BN,PSS)B/;;35'>P($_@,4>/'=?GW(C@
MX"S@4<9=;(@K7+*@G" AM47+MLT$[7.DU.!=0.%T)9$E9!=&.GA,-\9B$BD)
MH$!WMPN@)SCCLYS,U1UT)S)"T<DAIEUN3#K2T\J??WX].O_;Q+3.*+$P] 0[
M_J2@[]A1I*>!'S@.?&"XW@^_D#J[1'U:'L>LQ 0.!"6B"NH34E1;7PI5I4V0
M<3X? :VB;GV5E7P5XHW9%ZZL,EVTN\_B"XW+%G&"]$$E4K0IR3BZ;@U[!1/
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
M2,-.?_(FGQ?Y%5J1IFAVP6B(;A;W8IW2MO%-ZN7<U[_\--+$ =7@(NCB(PQ
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
M=+,Q5:.%83@]BC<&-Z!-&Y]AA[HHJ&FV:)"./ ^Y9G;)LA&+LE$VH\[>YSD
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
M[". .^X"+ $E;;%/\'LS]DFXJ67>#*#7&#&I<4E6YXR(0RT'@JY4V%PL_2^
MBI+'4TROY$]9L;@R<UOX2LTA8#5'.=RY<*#\EJ=HUL8D%R!8:?+6]O\[A[L\
MD,XE_)*R8@M3OJ3H@I$Q<2%\P:K#B143AL]CSI-2FT]SL9V5O9R@'^ZZREJI
M#>UU!'79<K2VIB)FJAVG*47%U.[6MI@"*]B9G\/IUR1&UCW:$33$7.4-5[!T
M :>5\W@@@BL8W"N9!9,+9W&=T%-PE'F$,%:G8.U,"U"!*@N^3/MI_EW&B8CO
MYA&H3!/$GB)+SA'A2;>@(,&.0_2K0]Q#^5D=E]3LT-!!%Z0*,!(2*JU0+F7C
M&:$EJ@PNB4*$XW"<P$ (K)KR4-8 \88?=(E_WD1( AA* /D,$(_1Z< $^.0<
MOCF1,E7$1D3#Y07G,T$CRBM-8*E.LWG@A@C/0>EJ<B& 'I6?FK@:J6;T0<%K
M*E@DXZ9!H>MXI5F@TER6R4KP\"5:)?<%$!RL7]I1B)J$HL-ACV0 4L7#9V0+
M4$)%2TBDM:9H743#R369!2GW#\\!=CW^ N,(X8-/I%D089TCQT+K(7*RQJZ,
M4*$0XD%\'8\J1Z6$]VMY66$S>#G-!6<F=UW!X6W2+E0 "P<T:N;KM9BE"-@F
M)B$1 C2NYEL'"QEOBOT*60K^T-CVYLB#)E&1P '"A6",4[C30OZMY&V@:)*J
M*'I !K@(!:BA9562C5 9XBIH&*8FB+G*?12B@5AO9\:ARL],%F@_R<BVA/Q>
M1$K*X!4B,"0&$62#<%,)$ 6?B<PBE8((VBVLAPX?WA=CI#3<YTE9!?5,0,Q
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
MEA*-JF1X'+R:GCC(&/,=ZJ]@" ,R#O4T+9[V9-;(0SX5!4E47%GMDD6C;IX
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
M.?BI9YEA=%)%="58!SFK!O[(PW_XT($'\;1@4:^X2JV>/V=Z^NJ7)0LMX''
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
M+HR: WP^@S1>O/)Q_T*2ZYJK*XZ-0%>54C?]#+/%.$S@MVZQOY16-%=92IN
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
MPB2:Q'0=;A'H36$>DC5&%Y5EDWWH8,3]N[DOGS$?&>&ERK3MD-_'R;JDY0<
MQU0N/(="+H=O<A^P!G!\7^LX++G=W/T @;<H_TL?,5^<X>NRKQSF3[^\F4WS
M15K42[:KF[6ECY*"AE*S5HT2O+JGG+P589CC!8VI_FD;%C59S;'Z8SP,$1^>
M  _=?:/:8:N%O)ZMEK$TM3D9TX'./6:3$+63+*_1>'*\+03I"KGAHLO0@DZN
MQS8 #]:3_>$I,1U0-0.[JEL6N#+9NX :.F2Q$\WQ0Q;]%75;ZP-)^6@4D-J
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
M:]QYO9;WTZ?X!L9T"KZL8? 9F=!U_MQ(\FAB+IF)DNJL02>83]FQ:+CS(<<
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
MAW^#:^FQI#!>R>NR8U)]NZ:3&F.['."K17&Z5BUZXH<.NC!0WC/O:$49Z+P
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
MMD\_!5WVEEH#.^QZKLSR1 'NBQ*>C-5E^J[QD8%+R(JWA*@4@#8I*)M 3LL
M[R7F!C6#U_&L:-T%44O#^S:DAS&Y^ZGJ#KWWD'.+^32WD65'9T=)P%"Y91TK
M&9, R$1.7M'.9 ,T&3UQ+,W?8UZW5OP^XFV@\)?32:[MR1<XBS#Y[34=++3)
M57PO7SQ]_79U'"6;,J\UJ*&>2=I(R;Q(GD%1VH/TWJ0FD^0[H3N^$=!7C9MW
M>H/KH$%<[LV,7IF*Z6H*6C(*+:>MT]0\MWKK[$5A7@FAR>0I7G9I1[U_SM!-
M'-^\\OO(M<%^\.XBSO'?%V3;_O)Y-0IAN>LE8AER,G-2,)%@><7 &T[.8]1"
M<2Z0AQ;JWH'GM.S (83>8+#0%E@KPG<!UM(JW(GL88S#0?1W/R=Z"/\X.\4*
MH+'!R.(DXV@M;8>& -91)PD5%RED;S>[HWV3K+C'<#PN*?:1>7LRK&<@&:YR
MB;6@,],?0CD6I)"$3(9@#+HDFTPWW(KF^);"0-JZFP,'B'JG==B@Q_ZR->5T
M\AEGBS$=DZ^FB_Y].G=\W+!].KM@OM7N&91QW&HHB5YQ 1FT=U""<A; ^-%=
M']RR3Z<L$)>=R^K@:Z8=D,L:O&$1N)*><_(KFMCJ=Z(:8&QZ0LSSY_3>K?-A
M7Q=Z.XC3XTGM2D!^U8?W.#NO8J\S8)4N(K <ZC 95[M;Y"3(;2>CO<A@,S;I
M5;H?S,>6NKP/<[;,4&^EH$9Y)Y?O9CW=7\_&'PCCV66X_VN[B\OBC9'DNGC-
M%:.-NC"=Q;*O9&;*EP#H1<WB;77QW!7D*5&IF7(&OP)+Z>+\HI:!Y36RUY/K
ME%\B3*%.%B;/OEA/Q[^MEW1U5*3U3N08,4:M[CL)NS_N%(C02+A#=^U\A8OK
MN][[CWB-M>7:T5^1OI^^F:UJ.MXMINFWD1)2V. ]LRI*(BYXYEU23);@;0K.
MY-RM[6LO&"=#E^,IHWG[SFM@OZ[AS6R<:B>#XKS)Q3(1;+UXMO4^@GL"&J."
M +RT:4#=&>$I$*JM6EK$[BJ)J]5%N^+%;#SY<%F>_NXCT+;Y"G]?_F@^*LY%
MS#PSB."8EHZSJ,F+E#HIYXM#+]N$:CK!.R7F-%#(@+T]KW+-K^V02\27^%9$
MQRQ&.OODI,R,1U_',1) SV5D27MEE,.H5).D_'N1G1)9AE7#@!U ;P)<[GPW
MS\U+H)<\__73=/)U)2,>I%C>E.<4:Q\$U)<W6S890T>M1J7:%/3LC_7TN-1.
M50,V +W_EDUHZ0W6NA19A\%"TI<;I2DN@T@"4!]MXLPCJBCNPX]AA/U8*HIK
M2&FQ"BE=7;FXK'1Q(K%2!*?59,5\P,2P&*7(LD\BMZE#WP+F\=U<[Z7FVZDK
M_<3=)J7I!J;5G4L75"WOK+?#>I@+Z_YJNX<'/61^/$9$D%9FFUF&1"Z^][1_
MEE!8#.A*P!B+;=+7YIA,N.>2^EA$V$?4+0K,;P9[5G>F4?'DC<_,%NUJ)J>C
MC8\\]A"SS\D7T:C![U8T#V!R#J"JW;;F@7)N<+.S;%%>;8M?_GUQV<IQ-3EY
M27:?3?!>US(H48<\D;WK$Q9RN+DL!8/@NE$$Y Y4IV4D#*> !J4N&YA6+T$7
M4"V-A:VH'BBY;3CM35N)OL&1L1T<QV(S*D&0 H'3'.DKF9E7V7/I@\^RB<EP
M1#[<E]9V9#KL(_$&-+@9,ED?:,5[R#JPFG7%M++ 8LZ"_D"TR,$*R"U8L W,
M\>V& ?1T*U.DIY ;6 VUX_-T<AT0%,<%5[56VI)A1 <A"]QIEJ0%8G8R5C4I
M@KF%Y!14WD^\1RQ\$"*"RBFS4.@/';U@H&JDS;NBO :A=9/<N6^F\*&793B
MT!M<ON].W.T"[,_"A_WTUSG'_1#A'[7P 0)'9;1A-O'J.A?%H" YNM:YZ%4I
M/C69#_-M%#ZT(<4^,C]:X8.PP@=>$_H#>J:#H9/1.E&3/YRKT137IC'1HR]\
MV$M;G0H?]A'UL0L?7IR-(=<L_YX5#[<^9]!2A[M1;M0X),>Y-!ID1J&CX+&$
M')W6+COZFI?1UD\<,A?NY=6MIX4@"C>!J3K(1UM76-#",S11!*5!&]NDO&@'
MGH';[T-:-X-W1OH$A;;+(D.-R&KFG8X,+"8RD>E-2DTZ,.P"]-!==PYCP#VM
M]P\3=_,&F-?F)I*7?#Z^.!]EDX(.CC-! )EV,M7IK,!H!U4(H 6VB4'=!^P4
M:=%3_$T"4MNJ:BXK:,!88P2R5(BNVI#S7#O-L\BE!C#:ELV)/BU+G!ZF]* %
M)082>9-^J9=QL^?CR7H<Q/SOL^E\/@I)U\%"=: =.>2:U_[ SDH6/?=&IV!%
M;!*LVHGH-*@PC, ;A"PZS GAFK8H:Y%4I\G_4F 9F)R9X2453VSEFU5'ISNP
MI04W!E9!@Z* [F.\1P6%BK&VEG= IQR!8Q"E);\M@0&1K(U-KCBZ0SP-TC12
MR8"E 5L&P*\/Q/?3I_@&QOG]]&7U$6<KL".L^YTGPRC;5$>\<Q)(CL"XE^0W
M*A1^\Z9D1R';7H_]M@G16,P-:@"VFD6S=W!&F^#EA=$H1.&-H/TNZX2TW^E
MMK(B&RD[K;DS)5IW-(OT!K1OFRR-5- @E?\M?KJ:>[CL=_$&OBROC1+/,A@I
M:A,[VLWBTG*N,W2SUI&73.PM+:BQ"]!I$&(0<=^F0>\9<1MUDS";?1E//JP"
M+MIK$< @,QG(*G*.*"J)K%& 2HX+GW,3*MP%ZC3H,)C8;U,B-(MS_3R>IPIP
M%7!Y,KEE1\]?X6(DM0HBU%2C)(#,H52;97/%4M91\B(#STT&Q?7$?8K$:JN\
M+4&T@8.LEXD,QH./9(*R: J=E(F<LZ@R,/JB>N\\@VP4,KF%Y5A59>VIL;]H
M'TLEV9:Y*C:72'Z69MDXVC%U#,QS6I"U/GGG78RE2<' XQE$U5NY]X^@VD?(
M#>+K.P<\=,'U78^@VDMQ7:<.'2+U8[+">UV0%\L*ZGJ0$>^#"H[1^R <6%5D
M;.+A/O815$W(L(^PA^[L5;VI-Q>S]!'F^.3##)>'S2H'I2A  :6P$FH>)*_]
MO^D;K,0"0>O,>=C($=W5N&GW0Q[:;CQ4#=,&,CQV'L^[!6%=X.SS^.RR:V?/
M?)Z=GS=H7D\WU!OY/2 <MQ9<,F"U)]F+Z#!J"-$'Y?"RA^G.3VZ3YQ.\I&=S
M,BM"H;TDE3KUE@=&9FBV!EPAS*>0YQ-<0K%,>?=2,XW:,3*L LM99]I*+?E%
M1TCL>(QY/OLPH'.>SS[B/F:>S]J%'B65I>0B,O*':9]-/M(^6X<+: PQ2P$*
MFI0>W(OL%(G15P''3?51=**$E#BS(M>[0&>9M^1XN>1R,E:@/&8WX\>5ZM.'
M$P.)_*BI/D6"=,YYEI+B-0>I9MA[R:07RD"V);E&V\2C3_7IMST,(?#FK4$O
M8S!6."0[K=3._U#;!N8Z@2@P%3"AEQ)UFPY'CS!V.=R1L+]H'W'L$DL)4">'
M<:N7,ZHBBZ)&>)-+T980<CY"0L]CBUWNI=S[8Y?["/F84:HNN+[KV.5>BNL:
MKCI$ZL=DA;/6AJ@$2T$@TZ&2'Y-BAMP@):S+R(_@;SZ^V&43,NPC[*%CE[?B
M-;N"<!GJ<$E:N951D)NC) ,D&S?XZ+433H32+9#9]8D/;2H>JJ!I:^FVZ(.U
MHRXWU\ZAM9:%3D*")60M=9*62<@E6!.T,4T2*1Y9AX.AS8,AQ-W C]Q=F]L%
MV)^]#?;37^<R]D.$?]3>!H*#L#YP%D#3^\!Y+=R7F1D9T$?:P"(<:Y=XA+T-
MVI!B'YD?K;=!BO4H1&"Y&$6@HF*T2,DL5Q!%CEZ8)FE2C[ZWP5[:ZM3;8!]1
M'_M.],V;-R^G,.EY$[KQ*8/>?]Z%<./6DVOT2H"R18%.W$)(*40R\\GPLT:D
MT9;/:W/7Z206H[ECSOA %D?MIE0KT'4*@:,W"N2W=-=Y/9Y>A;<:W5;5.A>C
M&"4W&I 5GA+3A;;.0,QFB;9.$,%RWB9R?2>JAW9)#N/"71<9_03?_.KSSJ(W
M"4(H3S((>=ECSCOF#2=I<*%DDMZ5-F4BWV(=8A^^-%+)T)&,-Y?5+<3N!:;%
M<MK6],,,SI]=S&:U) ZDL;HDH#,X$38;@8% PP2 S"K[VKJF4P#CG@=]VTH?
M7)0#^JEW8GLUG:05/"TLETX$6C?9V;I K27@DAG%8THI6N5R+TU_?=8)*_M
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
M$BVJVQ=$85YKP1(4)827V9H^N3#T@%L$HG_=)\]6!*>*-0ZJWOF08AYP*^D
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
M0)H9O!AK9A 1Y A%,J%8!LIJ"=0F9'*<L,Z=O;-/<VY%T98.+L-F<"+8@66
MNHAM /3[\1^1,_)G?]K2PP^^Y5JW3UW(='8G^2I/ER_OONN);_$@/^DAG_DQ
M#4G"N?ZX [W3(9[^*50$QOKCCX.8)?I[M_G,3PF8VB?>Z @:)8'1TNY+/PEB
M^U?>!S1#'S.ZH6+]?9\S??-M%\W'74C^EX?LZ\_ZUNJ[UC_L?\XG'SO*IWS.
MJ.8S/GM=M]GZ6OQC551-+>^SS](HF\Y-L_(J%=-THK_/WM#BL2SQ*:3XY>6W
MPO0IV81L5#VS4UG,$!+$HRJ$"5>Q_OP#!1EA#/(@"%2H(H\+JUS^(91SHHX1
MDOSOC0Q -Q:ZK0]Z'3>[=<5KC<; ;+5EEJEXLC:L3#"O3 ,_&N-^,O]L[ .-
M@296XD=C(T@7/VW%D6WL[&]1,P3Z?2Z&>M5OU$74$,CN+[X&D=$Q-J[VCN^Y
MQ.LCEJ:VITH2A@)/P-#S(HBH""#V!8,J\,(0(T$#'CB%O]E(G=KRKM1.KGLY
MO8"\.CQVC%6S MR.@WN'<>BE8'.^=_I(K[>BJ9TPZC5@S$KPN#%A+E@<A'TY
MW=R-C=;\MB'"&:,4,R83* DQ+>>0#UE")4R00HE("%/4=UE&'I$QM=6@T:GR
MC&:5LMG"<4%X#$@[3KD0GH$99+.JVEF+]4<7+>;W20['Q(Q*!2UV[G_X;9=V
M[9*Q>^#^8?%6/F=%NBS;8%X7A5P6,^6CB,>Q*1 1(;WFD 32, AAR)3^Y),D
MP"&=+>2#:01T[](^X[QLJQ>>5"_\@08#3I^/6;Z$>JGS!$2ELW/C# O<[6BB
M-QC':JYQ&"F4+D"M,ZCT[;/;ACTZ_?;?L) [<D<.>R0.>W0XW-LQ17#3<Z)9
M>G,6<I]%#(:*Z_6&)$SO=?P0RD3Z0E(_"I5P66\<BIC:<J-R/O%*.?<V'"U8
MVG')90@-S!Q;R@VP.SEM>J^I@(=2QLT"/&GE00+@Z2L[GS\_TU2\^VX25>3U
M0FQQ1_.6!C00PJ<A5!'AID,7AI0R <-8^*$4IBL/=SR./B=S:KZ-6N6J09?1
M=DT'M'UJ[ RZ]>EUGU .?YA=HEBK6Z)9*EPO, 8@$ > >C[L/BMV[+-O6QR.
M'(5;WSIR G)5K6]3.:$H5;M_I(N;LEI"\<E4\"[T_N-W:8KX27']56_6'N3?
MC&_FK=Z8K%L=S@1+D,=X !,OUBRGUS&0)IZF.J6$'R2>$IS,]%8OS<3=DN9+
M2T_N!$QS88!] P=T5:R6A7&9E7T/EX#)AW2Q,'_)%*BT #_J+8C(YG.:%^97
MH#!(.393G<( S+"*?.3I-XI@ED"41#$D"DL8(L0DC62,4?-NO5N(_\YO5F/>
M:.^5-#/V?[\WRO( 9 *J3FC]<7%&_U53-G@+F7H%L]38@!J<*["&YPHT ($:
M(5!"! Q&8-,!>0+E 088\TD4&.C3KC]'B8(!1K*W(@=#Z-9MU?EWFJ>FQO=G
M:AK<FJJ9LX!X*O0]"C%'%** (-/57O\421:'L60AE2X[W4,14]O8-AH"HZ)C
M+=46(.VFI\O@&7BR<$3&F:=/&]\G:QZ1,BJ'G;9RGU%:KNP8K%G%H]SFF9*%
M:>A$Y^_EEA];B- /O C&R#01))Q!@JB$0<"\6.BO/F:^R[?>+FYJWWT3K#.7
M#R:P4B^2G[<4!TJZ>K?/H&U'"/UA.# Y-/!M:PJ,J@.XL.Q Z34ZL5WBN/&&
M5M8?1!#:W=6QR'/I$2N7-'4YSENIWZO%4J]29H@PC!-?01FB0--*'$ <80QC
M/V $R8A08M^__HRPJ9%*69;V>:TOF*=/Z?+*;+1YVQ?A#G([F_0-W<!<4J*V
M4;6IU7L%-MKV")UCO>2>(!RS+G)'*-UK'UM@<[;&<=LSQJUE;&'-0<UBFWLN
MWYQ=?T^+61S'GO)4 KEI&H\02B"FS(-$4!*R ,5*TJY;,R-@:ERZM_TP*EZP
M+2LA=-^4N0(S[I:L'9.+-F3;A@^U'2MEO-IF;-O"MJW8SG7=ON6Z<WQ9O+@)
M8'BI?4+%VY6<,8$%14)!H4R^>\PP)*'>E"6)\ 2A./"EYQ)2=$[@- .,U,IT
M?@2KA4@+;LJ[K_O9UASKN",["[L='_0)YL#\4*O:=#Y=:WO5>/&OP-L^7>VV
MT/3)(&=ECLHHM@CL,XSU?1?GZ7Z6\S+^.+NGWW]/EX^FSU^Z>'B?Y<==V'IQ
MPZE4.(!!8EKP(1-A'6,%L8AC&>DU!TJ2)J[:TC/471NKCVLWTGI@KM+:/66+
MJL$]^&9,D'.3T:DW>W)E3EJKYMM@2;]7_UQ9"/0]QJU?'_#GIM9HR@W%54]:
M+9RCM2\99$MWU, #-_ZIY_HT<W-0HSFQCA\&*LN!M@]L&0ANV#Q]*$T:)#NW
M*ZX#)>,ZJ_-:N;==<6M)M>W\R(X<70:0;9K.8!1P(6-(L1=#)+&$)*8")BQ"
MA/F1YTGFY([?>?S4=G?7=W?O[N\<^6X7,$L*ZPS#T![T4K%!FL@<M[E7QMB5
M,"X)'+7NX+L^?E771E'Z:7)[S?96%CQ/RP/[]0LI44"XCSD,A#1%N3T$B4@$
MY,27"?-\07VGWL564J?V8>]L09Q;2-G ;/?=]P[>P'10Z7L%]K9P6TH/U&_*
M :9^NT_9"!ZY%Y4#%H>=J5QN[A@FON[8?IN;Q&^]8]3OD&E38(**GLTBYMZX
MK68T\L,(20YI0O5:(O(3R$*/0U^2F(>$,H[<RG%8"IX:&37:7H%2WZIL?*,Q
M^%+J[-I*RG8,[&AJ"&0'9JK+0'4/YW1$J->02UO9XX9%.B)R$+KH>G_G\"/C
MQ-4[J-MLGO)4;I;NB1<DOB A))[Q=S.DF8I[(60XQ$((I+S(JN'S>5%38Z2-
MIJ!1U69>=P78<F_4"VQ#[Y.Z(=8ERN@,&#U'&)V2-G9TT1FKCT06G;NCXRG9
M*E^DY@1($]'[]+OYJ6A:8BA%N>ETE)A5#&(A@92%&,81B4@0(>XE3NN9TZ*F
MQA=K3<MI5M6Z.IZ#G0;6\@2L%[B&/OO:0:I1<X!ZT>?1Z/6XZ[2T<0^ZSEI]
M<,1U_@[W.M+O-/,L7ZZ%T \K[I9T*6_RL@BB-F*FI.\'<1!"I!@U)U<(8AD(
MB$D0(T(%U3_8UI-N$S0UDJAT!;6R5Z!45T,*&H7M2TRWXMO.%GVB-C!7= ?,
MJ?JT#1H75*%N??QHU:AMC-RN2FUU_=32Z/]>)F1]6-R66;0S+U9Q1+FO5R'"
MTVPCS-:%2N@QH:@?151YQ.V(?"S5IW>>7NE7)B:7R<@MQ?I>=] M'3I3&LC_
M;EG%];NB7Y4*A#]#TO#Q8?MS) ;OZ?[?)/GW^(B,E^![0O[(<]XZB_BZ*%9/
ME6;OOLN<IX6\-6W)9C0F2>!QO<T.$[WK-DT:6*!G.>DI0KPPIDGLE" XG*J3
M6Y#7RE7]W5ZWZ,;Y<1YX8NMU]*8_E6U*6H M@_44U[P3MZT]_\:;N:S'91)S
MU7EM_QRSDS7JO<U']A(OK,E>GGHW,<RS*!!1S#V]/6),ZC\\#AD7,8R#*$YX
M+#U$0Y?9X[B8J3'_IOXX-ZU?U#S[MENI7?_+O$-HS F0[:C[<N@&IMT-:G78
MR^VYA(_N==N/8C!(Z?9=2:]3O?VHM2<+N!^_ND.2^&<3WK[BQN<KRH?NBGB3
M%<L9"Q7G 8X@1CPVWMK0E!KT8*)X*#S"HUA:$82MP*E11:D8X%HSA^QF&V#;
M26$(N :FAVUM&X8XH(PW_0/ID"K>,Z CI8M?#JQ;TK@#2JV)XS;/&2]YW,&J
MG01RE_LN"L$I-*6;@)ZF%@V*L'XU_ 0FOLGP2B("<208].)8)#CQ$?:M^JZV
MBYD:WS9:FFQ2HV:G8)M]*.T68)<#-###KK&I-1RFBD\+!@/$UNQ+>HVXFA/6
MGHBI.75U1\_@BLVKKA@F'W'&$(NE8@)&B$40A3&%%+,0*H$)$2PA22(ZM,O9
ME=+A>&F4QC@K!JM,\BHYT]'UM@NDI;O,'9>17%RU8G6#K!X=44<M[M5YM"MA
M7(?/4>L.G#3'K^H8$-<X;GZA<Y-5</<HY?)O>;9Z-EF)9:9!2N?E$;I9*[ZA
ME6_G8[J0'_2OBAD1IHNZ,''_>E^%2.A#$O,()@%1&%.:(,_)!7.I0E-;$6Q<
MM5>@-@F4-H'&J"8?1YL%UG:!QC#PQ9@&2ML<8W<O'EL[%AISQ ;FK7$&RST:
ML">$>XT9O%2G<2,+>T+P(/ZPK^=V8^_/<DGUH\0[FINN#H5>XZV>5F6&^5NI
M4IXN9P+C($8HU.-G$D83$D*]2A,P"*3R8\X33)RJ+9\7.34&WM(0B$I%-QZU
M0-F.*?O%;G"'6*4L:+0%/VXC62O<8]=3>W3ZY#$+J:,RE3T*^USD<&<?AW"?
M3>'X&_5;(<LT^%D<$H5B+S"IH HB4]N=",5@0&3 0XK#1"7=S^+VI$V-8VYV
M#]Y ;M2%F8(KTX&K0_>R=JR[',E=@.#8)W.?&_2TLE77LJ'.Z$Z ,MQ1W;[
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
M /QHU/VI>DTW&H.-RF6G8;.ROJ??K\#U<IFG;+4LG7C+#-S2?LL6V4/8?]F
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
M0%.,0&J\>X1+6K*4.;\N;U9G;"_3UOV<MI8DR[I&;IZ(K?K)XU;_1"O'Q(=
M:^?P&AAT12*_)$Y*YC;FU,<U=YN]PLZDNV1G5+*S*GDW\#IYO&0&7:^!7D&#
MK)O?2RH8S)VOL-NE#/>""X;(P>LOW%T#3$II \:?C:1WBZ4]8IM(\];CFDD
M=8$!2DL"""PD8'G&"I25DBFO4ZTK\L;V>CN;LI#\:35.6I5O&:%R!G"WXZN
M,$9^)]V$X&VS52[C$FW&RAF1+S=KY;+]G3-7.B[SXYAJN9K\;MB++:>+/^;5
MDQ)3/56R37='HA0%UQ0(PNSA2$$!@S(#&B&H(#?N=>8TBZE3RMCX9*.H9^U
M-Y+=E!$,G]CA2V=HG%G!R?0.+C#7[_& ^=LQ!W0+&.3)=[)Q\[R[?=C_*?^L
MGLS7X!NKU/W7I5)-!N_:.C-/;+EZ_FB6O?VN$H7+5&>VG2HS_@1D"E!N-M>9
M)+J0A FNG9]Z9ZEC8X%]+1.K9@\Z<(?\.CU$ 3+V@:@_AEZ\X8W)K3SB+G P
M7O'&8)]G_"_N&9YO,@*J+XM[\:_U=*DN3I:<9,;)D!!I0S[0_$>E!2 I+D".
M-&0<4@Q3MFF;ZABD=Q;N].@<=DF-S$*UQE4]':NR\9FGL]-F/6/T[HOA&*</
M"_! L?I6:9N]VJJ='$VDO3L<21LP7N\-6-"8O;OT8>/VWJB<Q.[][^#'9U)-
M)Z^GJ^?[I6*O%U)-2I$RKE4)-*:&K8CB@)92 >,D:51 6>3(:8;<\8U'YPW9
M\F"K7&*U<^.;$["ZV>06"&+[,6[6._/ )5-W3WFU><PK)?[Q=?']/\PES1-N
M?CA^L$]N-\AC>\F(S4-Y\=_[N1 ?E&T^=-CK??>\O[)S)-7TNY(?U<^5/18Q
MG_GR0\V^J]\6\]6W:L(YE RB%.0YR@$J: I83A#@4F19CC,B$._1COU&M7IX
M'$/T9;]_6DYGB8T%V-?C;V:QOMF_03]'X]8E<_,^AEB!86BFL>3N=!C?OJ_"
M5;*QR);D_%PEK5%)8U72F!7.60F$;T@/YE:5!G5K N%W[.N$NFVHYC/W/Z?5
MA$&B:)XR0ZT4FLU;G@.>9@H4F<P* G.2,G%;ZQDK9FS.T?E>*E;3F]O.U*BZ
M\>#M6$6FMSXP!6@XLX]"W'8SM:07;C:S;^WU5C,'G_;?"KUI4R\^U5,)WL[E
M&UOU)<NL1"DJ !:E\;105@(.!0$(RA(I3@EQ"QI=E#"VYW^C9-)HF;RU7:Z[
M:J\<@;R^7[H9GLB/O#<R7ENH3NMOV$N=O^]@FZI.L_9W5]T?[-U6]_R)R;8=
M8E&B(F4J!V4N;.=L30%A" '-4H053KE@3KF6SA+']K@?G1(>'A+V'BQ\'7C'
MP]B0<,8^@[T5R3ZM;]W0"=SM]HK0H1O<NF%PIJ>MXX5]FY=LVTT?5F$UI2A-
MHOD?3XMY\\'*YJ$6"JNLD"4H"V[[>FL".!<9*"&A,"M+3?UF%??086S\]'KQ
M^+B8-[6=F_JIM=$X>3JL^VS;>UL3_*M\;EDS-R*+O!+10]^[UNDG9:%M:=7[
MO;79&1&RB4IO!,,V5_%78^"F*[UQ.FW&TO]6/:=-32OV]>M2-7WA'O1G]5W-
MUV:79U2PDRSJ01:3DLH2:L( A)C8GL IH)@(H K%-2H*C'.OGL!.4L=&C(=*
MVW#ZLE';<TB4$^)N)!<<Q]@;NA,(6XV3/VN=XPQ/\4(IZ-@F)\'##F?RP>)D
M!)/7Q7$#=>VA]/]1;/G._'V2PSQ#BA&089P!A#@%C%!IMIE<&B^OY%F)(P;H
MCM09>V"N. C,X3B!N>,E"AN0ZX/X6 -QFQB<-2:QU@P??[L YTO$W8Y5&66\
M[0)>?>-LEV[7CT1W\A95]9HME\^Z*?.H:JZ>",PQISD'@A<2(%YPP$6. *8L
MT\:G@RQURCMRE#<V3V[OP33Z)@<*MYZ(Y_';-<#=J"\@C)$I[B8$O3G,$9>0
M7'5-Y*"<Y&C_,?>X7M:CY\*[Z=R.I*KIK&[G\*#_J%0]I^:_ED;:1*9:4HT8
MT$A28/YOY\ED'!"6:JZQM)V(G%LJ7),V-G[Y=$.:M1N\W7P2'+3(;-*JNG&3
M:FW!@P9VUF:M\%U2JQP208]^!"&1'*C=P,V(^K42<$6HLU/ U9L,UPC U9Z#
M.G_GB_IOC)4Z]"0_3!F?SJ:KYXU+^6:MWL^/]UU"$,QS#($J2P@0+7/ 94F
MRAA"$%$&E=?PTMZ:C(VGPVV'^RV,^X8X.MP#;(F5.K,EWAJRVQW?)<:89#J/
MO2N^"=/0^^)^R@R^,[X)LW-[X]MNV+,QO?BFY'JF'O3[^7<C8[%\;F<K'AW"
M*^.EI@5"0*&4V5G/)2"HQ(!#J-,2JA1G?OWE'06/C2<W>ML#^^E&<\]N\:Z8
MNW%B#"0C4^ ^B%NE]P:J1@R ^*(5M(6ZJ^QA.Z%[(G+2T-SW^IX^WV+^==4.
M>?YB;M&6^V>IU#"E&A0D-0Z=_8DC*0 O2TJ*@I=*>QW?G1<S-A8ZG&=^EUA-
M>PYHO8"KHS]V,UJQG:U>0/G[4)TX!'60SDL:UOOIM/;$M>G^=,B!.A,&,4L+
M24":VJD$T.SL.#0;/9@RI4LBTX+(VZ?@C(T-ZK28=L2)V-,SQ!";FR;/C(@(
MSHZ!V0W=N$L^FN\^J[[5PU_F5?1I+U'\B_.21C!7Y:+OT/WI?MQP+X3MO%*9
M9;8.2#LJN$1,&3Z@@&N;%"%2#1AC". BU6DA:,YEZD,-9Z6,C1DV2B:MEGZ,
M<!Y(-T*X&9[(?'",3(1!RIT0A'SNSPL:]+'OM/7XJ>_^<+C.KI;2FYW(1.69
MX)PK( 5F "&S5^"88R 9*C2G-,^E4PS.3=S8:&#G!2\/^I/.=B>.T[F8K67=
MVSQ9K+ZIY?8?I\ISQ.>5I7#CCW  1R:2"V-^=[K&;?=ZBDGL;J][$E^\V>NI
M]2Z]7L]<=5LSML]J5J<M+KZPG_^<KKY]6\RD$?=NL;S@5"N1IF6)%"AL0S9$
M" -4\@)PXZ"(HA!$JK)?:S9?59R>I$$;M1T4W?RP)JA934NSJ5HWQZYU]?N*
M_6S^N;'0CF'X;A:[_E$W1#>MIS@V=UK/IRM/(NN]O&X4%W7)!FW]=E>W(MC3
M_>[\V,W=?BM\![B^*,;H!^>MRXMTA^N+V*5><;WOUZ-SW.*[6F[+>842I% X
M!X66ADU%B:QSEP*>9YABB51:.FWM3NX\-C^N5LZ[+OH4L&Y^N@F&R(3CC(!?
M![ESUM[20N[@?L/UD#MGQD$3N;,?"-S>X(]*Z?7LPU2K"<QTRDK$0<:A  A2
M"2A.B4$+2:8*IC+E%9QQD#FV1[;1S/@NNAD)^ZS8TK<RV 5J1Y<C+("QO8NN
MI@9W20NM57J M@:G" W2V&!/[#A:&YSBX-S<X,REX?+_JEW>!$\9@Z0@Q@&
MQA\H&01$L0QH76J(BD*FJ==1;[>XL3%.H][M>7N5;R)*.)AB!X7/9^#9:HT8
M*2=NN,3.HJM>*+W$S7J7?+@S5PU65_O%+(^:J%(3DN4,Y"27QI\I$* 44\,N
M$B-)<UF68IC"VEJ?'F<W@U;6Y@>IQ"AZ96VS2.YD%0WSOT5M;6W.BQ;7'@#Z
MPM6UC2YC+Z\]0"Q ?>WA_7H4O[7W-R[?2@E[J&-^^KIDCWOQ'H8A*Q7/@"QL
MZ$W3'%"=%T RG',N2I46R+G\[;J\L;ECGSY]2F8+-K]+YFIE3Z9;/9-'9H,2
M[N$U5[R[^2\"BL.<,2<[;9-67:<H6R\,/2KBPF(Y4$W<C9CZ5<2Y(]19$^=P
MF^&JXMQM.JB+\[CLYNGOYM9"*5E3_R<VE5\6']3<W*F=L3O1:0XA*96=[ZX
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
M-:^-6N6 D1EG>(+&:*Y+'39:XXS"2=S&_<J^55R?U=>I);!F>..$IEB5,,^
M0%EI&[9@XS40!E+(\CPK64ZA4S#WDH"Q,4I;AK13LAXEZENL=01B-W>$@"8R
M4WBBTJ,FZ[SI-]=B'=UVX!JL\T:=UEY=^%S/7?V:5^I?:^.OO/UN_O/%W*4]
M=4)EJ@J4,@!+K  2"-ID8@X*P8H4$:85\AH-<U'2V![JG:))K6EB5>TY3/DR
MO(Y[U!"@Q=Y%]L/+?V-W#8N@6Z^+PH;='%VS^63[<O6"GCRQ8JMZ^_.@:\_A
MVV)F+JZ:3<_VX"4K,RTD): DF>$,PBB@J6U[A'-,2RXPQ\R+,URDCHX_-DK7
M71WVU/[WS6F)P[''#8O@R"RAH8W-,B%0]><<'Y2"\H^3X&&YR >+$U[RNK@?
M1[VV=MBCZWIDX;3ZZ\-V<F>N88IQ48"\E!(@J7- D%2 B+Q0,"U1JKWJQ"^+
M&AL;'6B:6%5O&)W:@; ;ZX3!+7:DLB=DWNQR'8V0E-(A;5 >N6[U,7DX7-$[
M*]V.#'K[^#1;/"OU2LV5GJZJ3;L4I0E/B<R!5+GMB"XXH )2D NS_<FE<7*@
MU_B[;G%C8X[-/*4G]FQDSNJBDJ6:V;&G"6]5]TY9[X+;\= T&(BQ#TQ;_#::
M)AM5(XS!<P,E<"I[E\2A$]H=K#^3UNYR53]F.9P3\DZI^T>;0S^A4D EH029
M3E. 6%D 7F0<*%U(KF&6*JU\*.6"G+%QR1>U?)S.FQ>J=\+Z)2S=^"( 0I&)
MXFBVSUV===YH&8XAKL 0DAHNB1J4$Z[8>TP&US[>IYV]^<(;5>LNJY]MLLV#
M_J-2]U6E5H9ZUH_K^E7Z1CTME9@V:;M4I2K'!02**K--83@#'$EA7 ]5E#)-
M)2WP9M;Y%]>^]]YJ.#T:AW/0OPSAC\QFBQ_6E"K1BV4B]S3V:1'OORK=/!,3
MY(&:[C?*;[I#U_J#!PV,!4EM@FW(L#4B>3,8\#[=^Z,NP%#]_2,LA.<\@-XP
M=D\,\+_M@#,%>MM\.'6@_VUZ3UH62LGJG3'G?56MK?0'W4X-K2:4*\UUR8VG
MJ:"=ZF9GMPL)TH)A#4FID%\SH&YQ8W,X-]HV31"GK;[V[+@=#^S;,:P;;#=7
M-!R$D=\(A^B]WT/OG]?0ZS,)V &4P!.!NR0./1G8P?HS$X)=KAKC]$D[6>#=
M8FD_/\D(+3F5)>!9B@#*,V1^8BDHRM*XNEH6PJCU72WY(GIROZ_N/@_KO@7Q
MGMG/RJ@\%=8Q:/K%_S'W/J ;;ND=@Y1C7,[8@<XA1PTF?UH0DA:%,63A]UVY
M4>3=>RO_]\BT[[LFPPX@/*= CV.;FD?78K5>*ED[\[^O^<S^^7XN%H]J@LM<
M,TGLH\=S@"@C@*HT!4QP0B0LA=29[QG-%9DC/9 Q2H):RV1:J^EQ&' -9(<C
MEQ"8#</H^YIN]O8;99/WH:'S.#0)".% )R2W0.EW$N*(3>>QQ[5[#'?&X6C-
MP8&&ZS4#[S+::JH]XM^4LK:5K&]_JJ685NJ3\8:5?2GHUN?4&N72;#" 2)6P
M)R*V,0N4 ..\*!&#>:GE()7$O4T8VRG+21'Q1O&DUMRV3FK\U(&V(?V_&Y'W
M(X.L^/@W)MMZX(-IY]>^1:.J$KYY)4>Q4>EOQ=]CQW+S*@7;NMRN2;_WZWXX
M8COC\P^C0%4W<U3R[4^AJJI-I9""4<5@!E!.($":4,"D@D#H7,BL2$F6Y9M-
MC=O+T4M^CPU.Y#>;'96:3!^?UJMZGH]YF1IOR.\MYK<";B^@\*B^2(AY;P#Q
MOO))HWWPW)=>J(7D:3\%!J787M@<LV._F_0CMO]6WZ9BMNU[EPLHLQ+G0'.M
M .*I!!07&2@E)ZDA-24*KS+%P]N/S>'>:.?'1$>0N5%-?R B<\E&L0B]H,_;
M')()CB0,^JB?M^[X6;[PJ7X/ZV=5*7/1M_NY?*.^J]GBR3I&;W]:#VK3KUPR
M@5618E#4B0JET(#FPCS!B&<V2[: F5<'> >98WNL/RT7<BU6B=SIZ_>$N^#L
M]M@'1B_^T6JM;5V<L*=OTBH<@2,\  I)'"YB!V43#QR.*<;GTK[ER@OQE\V,
M4/+->FDV79_4<KJ0=JZU>KV8FYU7979E#[KY>37E,_6[$N:3MBGJ!.84P4PR
MD*<:F=U0@0"5!0,9(B55.14:^^8EW*+/^'(-=BK;G*#Y8F7>QJM%\F2^[VII
MC^:KSDY $9;,\?QNJ&6(?117)W@TAB2-)4ECREU2&V-;,NTOT9Y!R<ZBD'72
M 8 -6S]]BT(#UU4'P.ZTWCK$3?NVA;(1HN738MG.:6,K(]/L_);/KQ=234HJ
M.92&5'.&H-VR,<"X* S1YC M-2P%=*J!<I0W-F?O[69V_9[.=TFMM8$Y:35/
MK.J^G:2Z<>_FR AH1F;!$$#V:#[E!,_-O:BZI0S<FLK)Y--.56Z7A1HH9@=S
MMY7$@A<I+(D"*K5]Z 34@$#$S7\*FI49R7GIU3.Z2]C8Z*6= '@Z7NPNF=G#
M5;8KHS*.P;]EJ-X[_1NY,Q^MGI0=I*EFGN-P.Q?#S34+!7%DSCD[3Y'IE1VU
MN &V+D]KAU9\6%21ZKVOHA5W<-F>O!<>7G9J^?4!9F>NZ3G$S#Q22CT\*4MR
M\Z^')^!M'+!ZLU:3C!0\,ZX-8%@82I*9_:E, 5=IRC56&<KT9+58L9D;);D*
M]J*GK?B(]&1E)'IMTXJ2]7[PITGB>FI5]YQIYKH,;F04 ]S(Q-2H;%,L6J7/
MQ-K,%IVKNGMOP$EFGE %'6/F*GO8&6:>B)P,,/.]OO?1?)O>9W.G5:66W]6D
MT$(20T< $YD!A" #1"D!"IB:W1DS5(78Y*G>2AI_;KER/I$_$>7SZ!P+C/<4
MO5)?I_-Z" 9G,_LN]SZ&/\54DSQEE&8&Q$S:";?2,+^"0$,HLQQF#''>8OIV
M[IA=$0;1C;B86S09%DSG(,9-\,2/6NS42UK]@D8H+EH?."1Q*F?H&,1%2\\$
M'2Y_=N <YG=LNJR/XNZK:OW89(C9OF;OEDJ];Y.-/IOM\F_3^?1Q_3A!,B^8
MH"5("PT!(A@#+@@!BG H&$$*4:_VA4,I/K:]<=W+3QM=MRE=B7G)&B?IL=%W
MH#1EW^5W#&Z,<%%CQT%N3TFVQC<QDV3/_+NF[:-%(-E D'RNORJ_7?FJ#)>*
MW'/=1I& [*O[WR/MN.>*!$LV[BL_1(^[STJJ1F03:FK[W$/-I*9%9O81* =(
M9QP0K)B=W,YRJ&6NW:8A^P@=VVOGI,';3NV[-F[;<[Z TQ*XO3Y" QN9^H-@
M>F,7O6Z0XK74NR#W!?OK=2/1W6SORK7]N&EW?+*HJM=LN7QNRRJJ#]N6U5)"
M7%+*0%X6%""J;>(A)8:D$$.XT#S7F0\U.<@<&S/MG18:G9,#I6_H$^Z"OALK
M!<8T,BG=#J<W(WD %)*07,0.RD<>.!S3D<^E_:<L3>64+9]_9S/5CD"X_SFM
M)HS:L00% 3JSU5?('@X6F02I\8U2Q@G6VF^Z\25)8V,>J]YVE$?RIU6QQVRE
M\Z Z[I=#0!5[@^N#4J^)2IT(A)ZH=%[8X!.5.FT^-U&I^X*^67+W4IKO2O5I
M4:W8[/^?/M5)6K),,\%*"1 DMB<:4X!)E &F4\X*7)*4.]4S=8L9&QNTJ5RM
MJL:!KY5-C+:]\N#.(MO-"N'PBDP)?:'JD>G6A<3-"6YG;SYP7EN7@:?I;)V?
M[KE-L3.BW[19\Q<.>ZIM\'>34:5Q1F"1ID#JU&Q7"(2V37@)<*Z,WU!2 857
M:]=>6HR-0MKNE\FLU;,KOSW@6G#*9(ZA!"JE*4"BS &16@#"48:1HB0K2_^(
M>?05&3"DWL1^D_^7S=?F)9ID=XGEA"'6AJ2ITFEITT!SLS:0F]<H*DJS0!D4
M&FI:P-0W\C[0RL0/S6_6Y;>Z?BX?<%D<=_ZQ@8Y]%F#U3S8&7 Q/50<96L$3
M16]",>B!02]%ACU"N 6KDT.%FV[6SYLXZBSS<6TK*<V.Q<:*]AK0O&+55-C:
MR^G,MC>9E"56'!,-)&<4(%2D@$M)09%"5,"RU"CSRB[HI\;8_(E:O3HW7C8*
M)K],YTEEC:A^]:/)ONM"1 H)+P"'*3=;08W,ZPLB4"B28IR;%QN&?F6H\5=F
MF/K39FU^;/J&L;9OF%@\/BXV:Y0L]MH<#[UT;J^X^,L1^1UWTKFM,:$^L6H6
MX:#1V^Z1:DT)]YZ[#<J0+[J>F@SZIKL-K>-7W8UW"Y"^_-ILR:N)ACDA$&F@
M(3=\B; "U/K\.F622"(RGGJ-ZSP5,;9WU(&&-V37-OBYD=9MJ$0FI,/,VEJ[
M2'FU!Y9'RZIMI+Q<3NV!E9T9M8>?[%],M5@>5CYL"AYL9T3SN]^8%;<W[;[@
M6(B""X"R7 -$2PT(T1BP,B62%T05N?!YZ'OH,%Y6V#3)KI)=K_9/O0NL?)?&
MC4\B QZ9<!KMSY1=;4RX2UHCDHT54?K9WH!BZ(HL7S4&+\[JB=.Y.JV^MXJ1
M</GEQV+3$S$G.24Y!B+E&"#C_A@Z)!G@:8809122TLL1<I0[-AYT21$TRH?,
MN-RM@1OY14 V,N$Y@AJA\9HG5L.E7^Y$CR@#\P0/OR3,T\L#;=/,!K MOJI3
M=:A&&,(,@R)EAJI@A@!590Y0210C18XPH3?MV0[EC8VB#O<K7\S]>Z5"74.Y
MY\ZN/W:#;O-<8+M]LW<>C*@[OR.1+[L-/&__U3WAA<MN2)>PP92E^J;FU?1[
M.XOFW6*IIE_G311%/']9LGEEW"T;;9G+^F^S)O8B_V==K2S??52K!_V%_?RT
M6-;_L%HMIWR]LKU!OBP^L3:T+R52B@.L9&'VEX@"L[,4 &NN"<PT5-JK=&50
M[<?&=*V1B6BM3%8[PQ*VM:Q/SL9@7PB/P/48EWF0@/>!X>U(KN07FUG]ZUVR
M^1)L,$CV0*CC GLP)#L<[A*#A TJ&"QLPMNR^?<].&QKDP:0P*'SH=<Q>,A]
M, .&#]4/O39G0_R#*]%S6'Q[,&%T.WA%3WC*RTQF-E2"\[KT"5"6YX!R69!4
M8DQ4X3'.\IH\)[X:?I1EOT/1BZ"ZO2ANPFB@0?"MBG5+.[=HD_\ ^"LP!!W]
M?DG6L$/?KUA\,N[]VN=[CHC:JQ97J\J0TX==[NQOBE4V@/ P_VS[ EMQY@,?
M%_/EYJ\VGEO9ZVLR^Z+$M_GT7VM5?:EI2_U<O3(V_S6A.:+0;.1!F9=VZB(D
M@ A> *@A*6F!M>1>%4Z#:#TV[_EW\4W)=5,+]'VC?,)V5?Z>HZD&67DW%AS=
M>D:FU+V&(ZUU=3N2]_.GM>%9ZP1OK4EVYB1_U@8EUJ*D-BG@6<>@2Q!TKM8@
MB@\[CVO(M3B9XS6H</^ZN3?ME.G:B9Y:(9_5D_&9)[C(%65%#J20I4T%0( 4
M&089Q)!J56*&G*OF+@D9VSMAHV>R4S1I-'4OE[L(:#=WAX(I=JS*'R&O*KEK
M$-Q0(W?QUH-5R%TS;K\^[NIG8\2[Z\@&)##E-LJ=821M^@\&G L-4JRQP)KD
MW*]^_KK(T=& 2R.<'C$E!_!#Q+A'%ED*@&;@P':L:).#U!&%L[MB3AY7]N.A
MMX]/L\6S4K^KY?>I4!?:L\WJE:ZGZA@':?%U/OU?)1L=ZN3(#]O6-Q#3DJ6%
M;>)I-L((9QI0G:6 I913@4F."J^<Q<#ZC8WASG9OW%51W6V&_<EZ]_2:/4U7
M;&:-NVLG"=_0R2CTTKM1Y@LN:&1^'6@MO3DX$N(A"3NTBH.R>R1\CU\%L<3T
MK,=L6A*T&8$I5;F .@?$M@M A33\#QD"&2>0\CPG6FNO,LO]NX^-LUOE/(OM
M#O!RH\K>*$0FNDT[BO!YD&<M#EK!=B!@V,*T<[:=U)N=_9#?(ZKT8CIY/Q=+
MF[7]1C5_OI]_6BZ^3^UDQ'>+92O&3A?-("VX%!"D*,N-PY;:N3VVIRUE&96L
M@(5R2JCVDCJV1WJK91T,_+'5T^T9]P.\^]F/!F-D3MBHG/RR4?I7L]=,=L :
MQ9-_1@56MB<U]>MO>( /Q(\?:&=N[@58P]GV4LO$69JW/.QWLT'XN9=]&][N
M=W'?(\.FX\87]K.)85QN[CF1B!8R5P(H!35 )46 $62\LK3,,),,I<PI:-!#
M]MBX?=NF9L5^VK"RLH5KBVU-V\QVLQ76 +"QP/<PT7U97$\5HX =_7BQQ=FH
MG=RW.'=U#0YYRN@-6-CC1G?Q Y\[>N-R>@#I?XL>[JK9H0K[[OQJNY":W:JJ
M[C\M6]%U5]*WL^G7:9TS^-^+E9KD2,$,<MAT\T%V_@+)) 2EYB)C6!0\9<Y>
MJZ?PL1&<U:E*U+_6;&9SA5??5#+?]BK9-(S1VPXR=;M=L9N-[N&*^:Z2@ZL;
M$?O(?+?3O.X)4^N>W"=;[=O&QAO][=)8"R+"[>$ 1X1](#\X-/Q^_G!/_#K=
M8M][#N<=][3VP$GN>X\0X?5WYBO4'+%/C ,,,Y5I(#65 )$4 U)0!D0F.,U0
M 6G*^P?5=X+&]I+XM)S.Q?3)O")8K=\M ?,]./N$R?N!-'1PW&K9QF5BA<-/
M@8@7!-^3]8*A[U.+NP/>9SY_8SYXDXOZ07U7,]@>QI-4YY)"#AC,!4"%V293
MC3C@!)F_0)SGA>R5Q7TJ:VRL\/OTZWRJI\*>YC<U;@_<%K36^;AMVNXOM0$)
M].PNV(6X&VL$PC$R<>QRGN]:Q.Z2%K$( 1('3*(D(9\1]S*IPY?MOICPVW%)
M_S3=_V_-EN8)G3VW2:5,9YDN<@A4F94 E89)N)#$;$@A1)((HJ%WENZ1C+&1
MQS8%=:MG[QS=8S2["2(01K$]"F]X>B7H7@ @0'[N\9T'3\^]8-JY[-Q+'QUX
M^/5#4['T;K'4:FJ;U%7OVU2]B11:<LH)0(@BXV4P!6C&)-!:0:)SEJE4]2A&
MC:"JTS,T?!WK:]O2?Z;D?^A&Y5NZ5L=88#>GYJ76ZV\SM/IA,Z5ZS]+$K'-C
MZPA&4U]?B%%,H>Y0\^\Q</HZSL%F2SN(ZO<B>?_X9+Q0*^>MX7FQJA[F;]ER
M/IU_K<S]:V7J K))P26'MDU8FF490+(HFM%HNI"4IAG"N5^MAZO@L?F4.[V3
M5O'$L,=&=4L"#7>T-:.>&<_.R^'&Y3% CDS0P?#UYEM?L$*2J+/L09G1%Y%C
MNO.^OA^'O:Y#A56=4EP?U#?C#YI?&R\LF_ T5XK:GJS4)IMD90EX22E A!>9
M,-])S+UFMEV5.#;6V@6=#J*K-N=D<1AW[>VQ7E\%-\X*BFUDLMKINIT3>[<9
MOK%5.!Q#.4,3DIJN"QV4DYPQ."8C]PO[L="NH53U97$O95V)RV:?V%2^G[>U
M-+7<]U6U5M+^U^X7F^D/JA18P9P#(JGQKLQ>&Y"LP( PXW,QF0JFMWMO-XJZ
M19T>^^O(_/5@WA]UNU%A];,>P;15^"1QQ)8NM?G1GGER-ZV@&[E%7Y5A>&_/
M#/L"V1F26$OL9KBUY:Y-<FC,N4LV!H6>#A("UY"D>9,^@_)I".2.J3;(/7N5
ME'PW,A?+Y[;IK1T$\*[)_9LP3*E4N !*"PP0MU.]L>2 L0P6*DUU5F0>5207
M!8W-\]NJ:JOI:V63/ZVZ2:NOXP;U*K[=_!<2M=@;T($ \RH&"0+<8/4?QP &
M*_&X"L.5JH[+UP]9R''5BJ/:C>N?[[UOK@>C_'.Z^O;:$/;B42U/Y@670F.8
MERE ND  E9 #+K$$M,A@EF<(9ZE7NP07H6/CT&WAP%*9M5@[9LAZP>R\-PX*
M7OSM<:UN\L/HFVP4CCMSV0>BP-ODZW*'WBD[(W%FL^Q^;<\0]II7ZE]K>SAH
M">[#MDM'J4ND188!5MK6^V8($*$AT(J1G*E"Y5CY,,XE06-CF9V>2:WH#8U3
M+F+K& (.@%CL.&XOL/QCL%>0"!I(O21KV&CH%8M/0IK7/A\IP:6Z$BK]K_H
M:!,E/9J2^_:G6HIII3XMIT)-1(YSFG("2(FI<7'* A DJ.&?DIK=(4P5]W)Q
M!M1];!Q6:][FO4CCJ+)EE3RI91-1")T"$_ KX,B+XUS8V%3KD#)3N>;,- CL
MTF7NDI,QYAL<DAJ( ?-IPJ_>H'DV =4?5_Y-^'7QSLN)H$+//7OKC+^VV%H?
MO>[W.JW^:@L72ID6&<<<,%*8=QF'%!")-,BX<:HIRBD17J4B5^2-[?VS43<1
M^_HF2Z.PYZ;]"LZ.^_5PZ,7>JF^ .U UL;I&*!)QQ"7H_OR*R&&WYF[VG^S*
M'2][F9SR_U:5Y;RYM%TDA<VY7MA?/:Q7U8K-Y73^]6-=]#]1 D.L,P'R-$T!
M*E+;B]5.)DDU1AA1B+%3:X2A%1\;V35ZUP%OU6INH['?S:\3MK)^MVV8K.8O
MF(;N_)T(Y("_P$J/P/MV=;[WOC!O][XP]M?F4SL0[I(&AO'DLOLNW)@2W)UU
M'Y?7'7A%0J?">\OOZ6\OE9S:*N_ZY/O-XI%-YQ/&\ESDDH&"<020E I04J1
M0E%R135BJ=?<['-"QO:R:71,-DHF?S9J>AY,GX73T9>^$:38#K0O/OY.<P<
M03WE<W*&=8\[+#WQB;L^&Z(UR^M=(ZI="FF]E<\F*2,L5=1XLH*9W79N6],R
M)0"6ND1(")1QKU"5L^31L<,N$=KL2E20\U_W97 CD"C@1F:5DZ8O>VIO_E*C
M'OBLU!NK>'UANH2_8*,8!TRZ.\>XW* ??]5]4IIIR*U_-*]4=<^K.J0_H5 0
MK0D!F2@+0UH\!80@X[THAJ44!<^8%VEUBQL;4S5-9%2KI24JJ_BO_^G'35<@
M=B.D<,!%9J$&LW:<_&;W6,/WYT;;@'Z.&RS!9[5?ECC\</6KUI^=AG[]JAXY
MU>^F<YN;_<&VC?YLPQH/^H^J&5'9'H5CF.<*90@(I# P_Z> RA0"#75!2XT@
M@>Z=3J^*&QN?M HGL[KE^=*J#!8:K,U?ZE;.'MG"UZ'NYI7P $;FE0UVM;)W
M2:UN\J 3HW#3G_EZZ*$/BAZ9UT'1'"C_.@"J?GG9SB!U9F=?O\MP.=K.%AUD
M:KM?=4. AE\_,N/'1V;[DX4W,\NWQV9J^9A--,YICED)I)0<()URP&$J 849
MHFF1<^FWD8VGZMCX?WN0/IOJ9M_[K,RNMT^<)<[2>D167GS!QA]+V1L@OV?P
MW2Z>8FT.'#>)NBS!(R5QM!T^-A(5];/1D+@2_3M)OIVOIJOG=].9:H.T69FS
M I8:9)AE !%< ,9U;FN!*$9,IA0[U5">N_GH>+W6+[$*7HN&7@>NFX-OA2,R
M:WH@X=4?\I+)-S2&/+GE8!TA+QFSWPKRXF=>)E_'T,2T22':M0@D F&,"PI4
M[0>F90E82B!0JBAU6A:Y4.@%>D">4=7I 1F^!V2MZ4LV?CRWJAXNX LLTM_&
M]WO8<_8VEHZQ\6/'0HPI+^:<FG^K%)@.G$-GNW2)ZA_D?C.MQ&Q1K9=J&[F
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
M^&&(Z#4SWP?SBSHA]$'?"V$3PJO/2JCI=RO9$)4P6DP(RS-18@DPY B@3'/
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
M).OA.B)AW8H3*0-[#I>L/'4.+GZR1_+@E\7"'NO^IAZY6DXP5^9AA\*P:$8
MRC &C")#JJED4 LEN70:RGQZZ[$]XJUR'DE8ATAU/\VWV1_Y*6[U2OYL- NP
M/;AL;F=RT>$5PR4&G=7T(*GG_"=ZEN0S.PWR0;<AEL6\FA2LH$JG#"@B!4",
M4D @Y8#FI1*PQ"C'3H_991%C>]P:#:UCLM/1LX+^%$:W-^IMX$1^%L_ADOP9
MI0WW91R"%K&?2AFV2/VBE2=%Z)<_V>]!WT1-VTELMD#5.N:O%]6JFN1I22&7
M!)122(!4(<R;52(@F1#4[! 1$<POF-DE;GQ!S&VZK+#Z-<GRBWF]39FVFI^,
M8;29\3_8LFZ]Y$<6G4N!$"Z(U-PX.0P!I&D*.&*9V<]HG3&:"IWS'ADX@==C
MB#R;;:K'9HICLM$ZJ=4."+H;5]^,X<!E ;ZX>9.V"R AZ;M3WJ!$[F+Y,:4[
M7=.W@\C<-H%MWA2?I]5?7\Q]WBP>V70^P1"J-,TX0%0(.X9) J:T DQ*7"*>
MIX)Z-53MD#4VO^Y U<3JFEAEDS\;=3V#/%T@NQ%((.@B\T=OU'IT%;F*1]C.
M(I?%#=Q=Y*K=IQU&KE_2=X[NMN; UGV>'@UR*6!:(+L+M/66ND" $XCM (5,
M*I*25!*?<,LU@>,,ONR59M2NW^W!F*O NY%*2#@C,\N'(PS?=J/68UZN&Q1A
M9^5>D3GPG%PW!$YGY#I>UX]C[H58/Z[K$K2Z=^V9</&'155]5*L'_87]G*1I
M*C$K&) X-?O1@E' B]SLB70NJ,ZQYLPK<<53_MC\F#WUDT7=4%L<Y%38.7-^
MW..[(&Y4%!'FR,RTCW#3LOQLULHO5OU?[Q+;&M+LKHP-X<BK)W@AN<Q7A4&I
MK2<^QTS7]S:]2PG,#<U]=KUT=R,<":5(80V!1,(X5ADC@',!08&(IL:IRB0J
M_9IE7Q8V-DIK'RBCK&^I:R>D;CP5"JC(I+3#Z* [=I3S=Q=( M<#7)8W=!W
M5<O/Y/]?OZ9'O/LP;?CCV@;XCD8#&0]M4G*MJ=F-@1*AW%9IIH I)0 E3)"2
M8Y6YN4<>,L?&'XV>]B4L;;Z[K@>>VQ-\O579(WKNB'LWNT1",S+)')4+&-^F
M0?;A>#I9%$0].KV$1W:@]BU!$/;+=O##JC,-PO%6P^5'^-EVD#CA>:D?@4LU
MG30]U^ZE--^?ZK7Y\6'Y9?%C/LF$E@45!3 [5PJ0S E@F):@X%RB3&KC_SF=
MP7?(&!M!-VHFK9YWB=74X)A87=UXI O0;B8.!%-DYNV%D#,/.&"P\^>JC4-7
M*?&/KXOO_V&N;GPY\\.Q"]=UYT%HP,&TS6/O\M%;=G9VJVB;*;Y>&"'SM7%
M=@D;G]3R%:NFXGXNWTQG:[/AK'N#3[ L5$&H  IA:;9]4-L*3@)*2&61YX@Q
MZI6QW%N3L5&&/56Q1UEUL_]U)7N/(^R_-C[[Q\B(#[.Y;$ZTFHZT.T/V\KWJ
M";-);4Q]9M^:TTP:"+W_O '2\)O3/LJ\P,[U!LS.;VMON6$_+MU.IGOUO/WQ
M_YD:F4OQ[?F#^FY0_#FM)BCEJ)2ES84B J T9X"DQ)8J49GIE!>%8#[$Z29V
M;"RYFX>9;)6MG\R/]_^=_&DU]LQK<$3?C1K#8QJ9!V^!TYOE_- )26F.D@?E
M+S\TCLG*\^I^S/19F=WB5%B>LS'1/^;35?7Y]S_:,@O)-+5M*T%6VOPJSDM
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
M>"P@2BC21)LQJ 1C3.%4IMRI9N] .:;&P4:#REUJKKJO'A]-V(01&FR7>DR
M;!1I?KFJ+C34M06K7SPUNH$GHQSX9:Y?KQ#X=4 ^IP&C:FDNAA^KT&9DA7:M
M JAU: +X;^HK4'H_W2H"ZH=;54"EB^>D4,/!])XQ:H HXZ>3&H[7R5Q35S3G
M?MOH_7*C=^ ?Y@MM(-.-_+XJGV<Q%CE3FD,1$28C*,>0I6D"6882'$D246GE
MK3[3_M18LA815#*"5DC[JT6G$.QG+@^X!&8D-TB<[A'U*'[%#:)3K8YV=ZA'
MI>ZMH;['!II+_$&*[4+>J1TWR/+'G,LSEQH7U="8( +U5?+5]V55 +VBF+>K
M]69]+W]NWNAG_CDS-<DY-A4\HXA!I'@!:2QC&&$4%P@C03*G1$'!))T:F7S;
M/C[2\ME87)41U=Q>YMU;SDT)$T<C*MA86YI94QC!T(;8J?OF^YO -VU=%=&D
M/WJ:;^C"Z'4#FAMK?]Q7F3N-<J#2SJ?_+_0(>+7>@@D[KGT7&O,C"S!XAP,3
MRU7;Q\KT;)SY!*>(YP6%><H3B'">0QKI#T%*EJNL2 EQBVP]ZF%JU%X+6&_
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
M=SDULJDDUCLI9793I32Y5LQB/V^+I7&3-]^-9RQPMV,;OV@&YIP#(%MYZSN
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
MED.)B+8G(HDA%D4.%2[R3)(DS953<<VS/4UM6E;R=4XBC8RN)[AG4;7U=GG
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
M4Y9#G!51GDH:H02Y.<E/=3,UZV,G'KC];OYLZY.X.L1/0FKK^KX6J.!.[DI
ML,?*?]++?A#\^JQ/]C2R=[I/VV,_=._30SW.=?W>MXO56A-2F_2699B2)(&$
M$PQ1PB3$2<H@EAQCE@D<YTXD<+*7J7' 8<3D8DY9);.K]_@4GK;NXBM1"NX?
MKN4#C8 !YG\O!'Z=OZ<Z&MG;VZ/KL7NW[^%A<_^N_$Z7\_^N;/.WJ^5ZM9B+
M^I1_*;KY%N_4!VV-+(TU\TW_IG9D.J:X\=+7A.9"5Y\;<*!1=?I[D*]RI<!.
M*[!7*TBR&J] ^YQQ?@0;=89ZQ?+EC/;;^# &V!UE-^L453CC0F"H4)I!A$@,
ML5 ,%IRI+%-%DHG$9=U_T?[45OR!<2\O4;-CP"NP",QE^T@5_POZ&:U]$LO+
M+D:EB#/ZO9SLYQX;-FT_-;;I7*[?;LO21-ZUJ[&43'!14%CDD3*IFA+(TIQ!
M5"0J2PE)\]2I^LSYKJ8VF1OQ=H:[EOC?W.9U#ZQV4]P/6(%G>T=(;;@TH(6P
M1"ZCX9,%>GH;E1 N:_V2&RS><+^;]7ZYT;N%;P]RL3#QNW3Y/%.IPL34KY *
MI^:>:@&IWN1#6412[_8CE%+K"UK'S4^-#FH)024B:&2TOZMU KY^"K@>E-"+
MO L>3G>WSJM]Q06N$XV.=HOKO$+=JUP]3PT-KUKQ?YIZZ5*\JWQ07ZK0H+K^
M1/WSQV4=U]+&M\SR.,Y1R@J8<Z7G=(PXQ%QF4.6)4#+E"9=NZ87=99C:Q#];
M<=YLRST4F!\P2G;60V#L _-+)3VHQ0>U_* 6NJUQ<]/\';1:@%]:/<Z/P8#8
MK,$H^@W4<A=CY*BMP3@=AW -;^K*./G?=&/;LO:)?)5<FT][ISM+LB2EN("*
M90@B+C"DB<IA4>1,1*G^D]-!<?(]G4Z-#+LAW3M1!\;#]V%M>\#A%\'@YQTG
MP MRZ&$/2Y  ^+Y^7R< W@*)LP'P-N]><>-^_87.Q8=5>4]__F.^>7A8+4PD
MA_[%Z1N3LQQGA2 Q@BQ-32&O-()4H0P2@6.6JX1S01W#X0>(836M1@V.?]NU
MS?XT*C2E@Q=SN37&VWRIS3<)-O1G_<^UAD"_T]9ST0^5^_JZ=4O;Y?PJ\V[(
M$%O:=Z&&;?P;[KN;Z_OKP+M*AO]HA]+$WFLU04=/<,<6\^^59IXOK@_$U?LM
M=%<YQK]2/A"ID_?#A[;U.@E/_D-SA13F!N?/)VDHXWYE?G4^S_1AZ@L1H:C
M+(4QT8./J/X(2(IB2"1ALHA5I-)LS#PHUZDS-4NUUJ;:I,M&'[!9550_P70I
M5WY*#@O&7^(#&7'IN3:Y2N<[>]_YSLRO+]59F&KF%3_C/*6$+%=J])?*T^)G
M]'RG;_$DU=CYMG?)9Y[F9?72^N.R]D#U\G%.$(YB6D#&E<D,DPC(9*S_R"@2
MA8AP2IQ*NX^MP-06\TI\.=)2[?MC\+0XO^(03V Y[J_O<)#L; >#V?RW1P;3
M67P#C>,TTHX/U&%:"VR@$?*7KOQ*.8;6Z/ZS4P"\7"WUC_7%D755#ORY_G.?
MH2M-"TE%E,(LEQBB-!(0(U1 08N"$!4CGC@M@JX"3&T1^RJY(2RZTP$\'2CA
M6JK;<3CLEJ&0( =>1K3H8"\[.!3^!M2"@S^:_P9)G#84/;\EO!UE&+F0]S"$
MCLMY#VQG<*JB.E*^$SW_9;6NJK+N@CI9+&244@0+EBJ(E+GJ*DT8C=#FOH@5
MI]BM H]%IU,CN9W,AY=46K%M D.'#X!M7(Q?6(,'PER-Z)"$1-80>4Y'=+G?
ML9,162-Q(A61_;OG>*D[J)_T3__^/]K?Z#_,5NC?_\?_!5!+ P04    " #G
M1*U2O95<>1RE  "YGP< %0   &5F;VDM,C R,3 S,S%?<')E+GAM;.2]67-;
M29(N^-Z_(J?NZWAE[$M;=U]3:JDK&Z6DD91=]\X++!8/"5T@H 9 I=B_?CQ
M<-] X 1/2&V628$DB./+%Q[N'A[N__(_OQ_-?OF&R]5T,?_7O_"_LK_\@O.T
MR-/YYW_]RQ^?7H'[R__\MW_ZIW_YOP#^]V\?WOSR8I&.CW"^_N7Y$L,:\R]_
M3M=??OE[QM4_?BG+Q=$O?U\L_S']%@#^;?-'SQ=?3Y;3SU_6OP@F^/7?+O\9
M15".,001$4$%5L GM)!8$28Z)P7/__?G?XY"\F@P 2IM03%GP87"0!G)LU*,
M9R$V'SJ;SO_QS_5+#"O\A9B;KS;?_NM?OJS77__YUU___///OWZ/R]E?%\O/
MOPK&Y*]G[_[+]NW?;[S_3[EY-_?>_[KY[?E;5]/;WD@?RW_]W[^_^9B^X%&
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
MKE57]QW(Z\28#0.W!AKI#F>G0[.?':^_+);3_\(\\<8H*7.&+"5QPVP56)!
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
M5!&\8-KH6))I>-[W5%R.W(1U:(S>=H;8)6 Z6$WW"']B@XA9!E.[M=?351/
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
MO:>0OGCK'7 ,LO8IKY/%N021O4RB7BEKDS+8L^R6_Q1'8@?J85 T]=L3L?U
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
M09%#TB0M<Q]1729BFB%M*.UT$5J<2@G?U'SK^^64!/:UCB(Y97%"_F<B8YQ
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
ML2'KTB3;<R]5O72+Z02"PVFP SAN9PB?-?0-V4M>"G@=:!\)G'84F0V$%%/
M6F#6*-%SF8IQ+SQW![?]-=0!O)XOYM]PN9Z2*_W^C(3-JCDK*W,\Y5@,E$VK
MKA(*..4CF*!2,9D;T:;WY -TC=NJJ#L(#JG%+O+@.X1_;\[K1;A3LBA:<CQC
M+7WT"J*('"CT,PJ%\@&;3#9Y#)'C;M%/$DTWTUD'9O+9?#W--4L__88?ZX#;
MS=#;E]_3[#ACKN5,U1(<GVKT7;EQFGI4DV&3@BZYQ#0M;%2@4F(0K;?D"5N+
MTG%A=)/=>Q#JN\\'[0FNZSFA)]?TSUM]MJTCW3I(]:KC."<Y=]+1R5G.;G)J
M?YK#E*BWZCA$69"LOZ30R 4#65N-'"E,2C_8:<Y5R9Z<#2P_V387<,*58$J=
MC!) Y8 0B]"0K&35'>/>-;'']U+5[;G-8]!QW:H.IX>1K[Q]J"[^)J6;6-$R
MH0$;O2-_/07PC$R\38HVF!0"*[N 9Z<K;N=/'1<< VIQ<:A(>\#!63MK4:)V
MW(&D)4+N1NU/S$T$P8.02=C$^6"7'2\]=[Q[;7MJ[+K.]Q#?V',0I_/IT?'1
MEG!K Q9B$XA (MS%!,[S1!(@C[,.>8]IE[ASMQ&(EY\\LN;WT=MB""&.K?WP
M_1+AWDLG;$X4&T=)A!<+'A,1;FH'>Q4,L368]B\_>;P;C8-H?V\A]G'9_>J=
M;D\PI9"R0)&*XCR?R"<*]?ZMDDPXZ^KTV*% L'<WA69II3;^P,&"[@,HM]S[
MY4)FS6BW+*&.K=*.F!"Z $/)/0])";]+?/53=45XE&)WZHKP&"F/?1/^TMS%
MER]>O?ET'(]G84FOWX2CK]NLTZ90>$T///DMI'\<?_U$O_ZT7!2B]LWQT70>
MIJ1#$L-S7*Z)_[_-%A$W4QS/[H@+\M&$DHD"-UN+3Z0#VF81A$+/3>"6IVM&
MZL$."^VH'1V>AR+J]FX-G:AW;+R_6W_!RO^U+@8A"Y-E+$2SK(>F&"$4K/.K
MG"G<VZ"]V@FAMW]^CST@]L;4 "(<&P7W+H8/F)^'KV=L%9.]B9Z#2/54U'@#
M07 D5Q%5CDE:\CYW0L;NSQQO[FH#M#02]=@(>D'RF>)JP\X9^2E((;(B_U+%
MVBF6%D"M+3>,UX%B'#WN.)'KQF>/-U:U 2(.%%T'A[%WA1T7!X JZY2M*I!2
M[8JCI8? 3 8K,R-+R%#[)H-&'J1LW-*IX>.U-BH9V[I\K/?SPC)?X^KT&M^B
M_!\,R]7$9A-\+6ME6.^ONI+!.^V!>;*73!4TUNYD;W9Y6I]Y_SVUNV@IZI_W
M-/U,-L_2>OJ-I#_28?I=9'1REKZ3E-H?I0>>BG%*@\M(V[,C\ 9G%7B9ZBTW
M%=B/UD;Y]\6W36WCZ_G9FB6GY.56D->6[^MY6F)8X0L\_??#8C9[M5C6XL>)
M%3P:83EDK"U]38G@,"@@%X3^S=QFN4O*]-&2&8C^;H_G'X.XZ]OW&+KMSY$D
MX2Z/PVS"F(K2D/\K%3&@E$L42E-0[3'YR#+7ZOILWR;>XY:<<0$W"C+N=R[W
M4=/>8/M*P=(B$^_+]4 7V6[U=[8\752 O5ZMCK&*+0GF0P OA"*?/*EZRN:
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
MZ53.F@L-3'ERRU-E @D%62B)6A4KVXS3O)6:D?L\#Z?MQ="B[P _VUK*;8X
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
MA[9ROUO3\<:O&/=B&1X/P\AR;$2\NUY>36=/&)!&(S,EU?HK":I>L]$F 9(
M[3C'4E#M!(:7/GW<)YWA<7"T!#MP+_X=%M.*Y$_A"E>W9F"N2%[WJ$E'WI9V
M$8)-",49XJ"40.Y6"[?B*2$CO_\U\4:/$G9G8%D?GFS)MI44 *6EPQ/H&+E
M01[/R4E"O_%!M89+#_[G<:K=@I,#Y-P!4GZ?S_)\]GY&GQC#[#\?R.H1$96?
MW]__].'3VE8FDS)+BMRF:C"5%@(<3PY"D<H%X9Q.;:JX=J&N'SP= H&G6?_!
M]=$!R#XNII<K =TF@WS2$@V#C#K015XW<SE>P$G.%=WEQ8DF&X2?T#&NNSLP
M<(Z1<0<0^7P=E_B_UR2W7VL,]X7^LY5U3H1H9'2+)Z_KN$E7=Z9H1I%<G;_!
M&$?F6T!E STC#R5IXNP,(?H^$;0^5MIX+8H5P+ .H0B:&#%10D+)>/+9&=8D
M ;>1HG%OK$'T_3J&#A!^?RA:&U.CF<PETE6+.=5V%PM><$&<".^U1HH;FU1U
MO$A-=^@Y1-/;\7. V#O SDOFN?[N_15>+B>12-=(S&@GZO:OR"%:X2!;4S %
MC\RQ)C[T-JI&GK;:Y#X;3@UC9_Z>9,*NZZ%XPMD4EQ.M-!/9&XH!:L.ZK$.6
M<JQ[$K"8DK5+3^^W#;G W;ZOOY*9 [4[;ROJ3BW2/\.?T\OKRY_FB\7\O_6Y
M/GRGO[GZ:^(-"ZG0U2\D19:*N50GRD1($0WWRCI1V@SLWX/(_IZ^C\-><T6-
M;<)>8NP91W?O=C_/EU?+C[A(6*>X"F]XD X"BQJ430YBY@;H7D 3"BHZ;#N9
MM<-IZ"^W/8"I.Y%*S@MY_PX7UWC+IE?"I(P.C)*K/(R'J&V$&(S,P6LL8;?1
MNX?3T%^BX>3(.U@E'5R\C]V)53H7EU<U/??YJ@ZW6+,5ON)$E,QLD!)D3>BJ
M2.R1#4<@=]>Q')$DW63%R.XD]A<D#'/I-E)2CX9O-8[UXJXNYC>\.U@&8R%9
M91 "=7U45W2P7 #,49B<L3CO#K9U&[]VY 4*IS-OPPC^/" UX4DJ%3F9FF#R
M>NY^D PH8B^Z,/(9_&Y+:7?[OI'W((P)HKU$W2-ZGEW[J]O^0WF75G.GEO>E
M6[?GA2&WNI )CB$4\@ <^9X\D8!3EMPP+\+3GJ%CG++7R!EY><*(_MF@BAH;
MFKN[ #_/+R[H-XMP\<\PHS_7?[\>1(M"2^<UL%7Y"/<%O*A;1XPEWT#YG)ZN
MU]HI^78 *3M!TI\9)$^KH XBAW_-PN5\<37]OYA7O"^7UW4JQ:]_?L?9$B<Q
M!:6,"!"LK>\B=4QY)"?"V:AC\9H9WJ2]?SM9NZ6$V?E@KX$V.L!6E<GR5E _
M7R^J;"<VIHA1.F "&:C"-00Z%2"+YD6A3UHWZ8U[B9C=<'1&;PN#2;X3]#R5
M#AV$Z6*E(#+$TWF>"*&BL3R#UK4/5=<538DYL"IH(;TM9(Q/]8CPE+C=T/5&
M7@^.TDP':'M\\?\4EM/E9Z(EY ^SAY5S?&+IX%CG$YB2ZN(.G2!P*4 B\YQE
M=/)IDU2+_-EF G=#W1D](C354 ?(>TEB/\\O+Z=7:Y?R05X0LPR^N RBZ+II
M4$9PW'&PW-1N?"%BFR:,/6C<#7]G])306D]CQZ0O\?5N-KL.%X^SB-6H6^L4
M\ZPN0Q0U+YT51(JXP;KHC8K*FZ=#U?=(BFSXTMT =4;O 4VEWB.:-H7*$5W0
M2@7@G$42GF7@&9($.4?A2RI6Z8/1=$S6@K^%IX AI-[!]7@[$?-#J0[ KW_6
MF:O7T^6W^LM5L< D!^Y"M @L.&+(<@_>Y%HI93B2NUD8-IGN]"IENV'MC%X,
MVNBD Y ]]BWIE*P74&3FDC0L $M*UV</5D?56-"8?(S9%\%/\%A^1\]N@#JC
M9X AY=\!C/YG,;TB"95Z+FX(>)C%JR=CDDHLTA6233(4%K/:)Q5E(K922I*+
MXI\.X!X&4:^3MANXSBBAWT@K9S!-=3[[@8NK*47$?\ROCI^FNN'CAIZFN@O5
M;:>IDDF10M;UP2;2K<6T!&<BJUT@):#WG"*Y5N;^E--4N1).8QV,)B3](R0%
M(5:S6BQ=W(D'5"?K#>EWFNH^:-A]FNH^LN_@2OM]/OM*GW999737NF>S5,7R
M!*5P1HQDDHS'!%BTE#FXQ'.;--0+Q/37'G* GI]WY1\G] Z!L^[:BT$8D4V&
M')*@B]P9<,47B!YM\1AC,4T\ZI?)&1D\1ZOY%=P<(/,.D// $:B,K)LSHV3)
M:9?!%&7KW!1+YZD8\#&[G,AW:_1N_"(U?>'F$#4_G<E[M,P[ ,ZJ1*<&D+_^
M[_5-<O[[?%;S%*N#Y;+VKJZ"#IS79A*ZTUW" D(Q40IZSE2;MOQM5/778';\
M[36<&CK U!,>UD>-83$9)2?2/3&A&-)/%)@ZF1T3SKLLFMQB+U(S<H/^<-J>
M#RWZ#O#S\?9[/U_-TW]N[6IQ+F3EH4X< "5-J MAZE881(,L&!YR"_B\1,RX
MZ!E Q\\&$QTI\ Y 4Y^5Y[.'#(1B&6>R3I,U=+>350;/K((D#(6B/&DCFTQ$
M>T;)N!?6\' Y3M0=8&73>!W.8Y Y9?"%_J&BXQ D)Y?0V2*="ERI)D//CIED
M-<+8SJ,<G0%$WR>"U@<K>(92*PTFL1I1% FA(/G_QMKH9"FN33[TS"99[:7O
MG2=9[2/\_E!T._C:<.=9G<KDT8'RFDRSL1Q$B=;6Z-2V649P5I.L]M+T3I.L
M]A%[!]C9_O8G2HBKL0].8* 8(D0(WFF(@=5EARRSU.0FVTI5?P,3!D@[#Z:&
M#C#U<3%/B'GY&PGO]JWW0Z'C0KJ9SFHO5TVC?5FGT2:\6*D*]Y"]4L1=[2?,
MB4-Q*&T1GAS,)D]B^Y'9WV/'@?AX%K0U4U8'4+Q_W5Z2ICXLIE^)IXN;FI?[
M!L.;8JJ)8*HXQ>I;(RN@,E]-6\H@R6P'=+Q6.[1Z@]Z5R/ZREL/ L)FBQJ[*
M?9?2]>5U+0?-MYQ\F#T\7BN.DC>.6>^A&&= F;JE1%-$;9SE.4:,43UQ]S<M
M^=CEZ_J+"(\#42-!CPV=/_#JH77^\@T?G)#RY-WHR_QQ^FTBN>#&.P=&1G)M
M<W#@;)+DB'IGDK<ZY]V&JAU%1G_.V@!0.YUB.KE"[PM$'S!WS_/'Q335[B^*
M;70N!K@W=6N/J?LUF*NA3Y3!!U;:C)7<F<*>QUL=>WD.KZ(.L+<Z,-4K)>M]
MO9C.OMZTY7S^1@)?_H'_7?W5<E(H6,?,\DV\I81E$%5,(%22%'-;=*+1^_(N
MY/4\ >L8U#503@>0>VC)5QS>\+,^5)CY1&67K! 96'3$$".&'!,1DG)22XM1
MRH;E,%LHZWE*UC% &U8EW6!L9:$?^P8WC-V<J7]]G\_N.9\P+_AJ6U5.M236
MH;K9\F*2UN1.*)2RS4[T_6GM>6+6\3ALI[;^VQO>7TQ#KBT"1_8U//N<@1L:
MMM/9MI/!&IES=>^YJ"Y6G8<6B[:U<T89651R;<ILVW0R/'8M;Q+=V@472:40
M=4%0*1B(,@>@'[SAD>4@FE1$O$!+E]T+^R!@NRN_O[P[N-U>V/MM<HD\D3"R
MMAF4BI[N9^+%&)><=3;&TL1E>D[*^( Y2KM;T;*WJ+L#RX,5P,ZI@HPBU8)U
M#G,AB7CI+9"DN UTC$2T[2%S3U!/P-E?T5MQ<Z#41T^/TOW^\7J1OH4EOONZ
MP%4I[/H5OLB /)0"Q=<'65;W*](OH,02O%*9,;_;7/\M7](3(@Y5X;R!/+NS
M*O?>OPF>%Z8]R#JD2AE;P"ON '7D7JJ@M&FRW6T#/>,^YK6]C X3>G?8H0CR
M=B*"U<*E4#B$(GQM\E'@K*+XT6#RS"8F4I.]VIL(ZLG^'*CM[;,H#A-]=Q!Z
M,%GVXP(OI]>7DZR35]XR()LJ0%F1ZN#L -9&B2$HCFV:6%XCK">#U )21ZJB
M VB]7*YS4YH3M-&:(Z1"1T-IJVJ_O :RYRH$K4QY.M.K91W5^'4&+> TD/@[
M -+M0);?IK/;62S+?RSFR^7$)U4GD=6IG4F1KY<->&L$1,><5JGZ 8W2.QLH
M&K>&H(U5&D+X':!HAP$_3)$I-09)[8KB5$DN9= Y@V8E%4<G@STM;>IJ[%*S
M<H 6N!I8'1T ;(_-706YC-$39S;034[,0(C"@$DIZ,"3,;%):^? Z]6:50*T
M=Z\&4\_8J:7';-U>^E_F/^'',,U?YK_7]Z/%[1H<K';9D>.83:K;1A@),,<
MS F142)W3SM$=UH,\\K7COO:/R28&HN\ ROVHMNX^!PNR%C?--9.?.1.<[++
M6:6Z;UIYBD/J\L%LE6)6EVB:Y+M?)VW<Y_R3>?&'JZ,#@'W"[W>#85<C_#Z&
MOU8)O<2R\%IP<+Q.IHFKJ*0.1L]*158RG932 E:;"!IW=54+, TB^@X@]*2(
M-"P6?TUG7]<)..44]T$CZ!S(:[26CH.@@Q%YD,DR[G)N J-M1(V\BJJ].W6$
M#KK#T\/U6M/E:J'@.@/W;O8L2%G^@5<3H:3GOLZO2;R^8Z4$SC$)*:LH6!&>
MY2:SQ8^D>^3%5B?-H3;09/\U<)^O%HCT;3^F%S?C<H^LA=OX>0/7Q.U&=]O:
M.&V,M.@L.*P+$))3$(RM0\5=0539>=_L_?4TM7&&6[08"R@N0ZUVS^!"H&/G
M,2$%)\1DDR3\N=3&[8. 76KC]I%W=Y?BJHX'2_'!E 3,U([J("+=Z-50)YNB
M*=[G?(*T59^U<7MI]_7:N'U$W1U8'I3X6&.,CY)#\IR"4U_%@DF"=I%);FQ&
M=H+GXXYKX_92]*ZU<?M(?>P$YK/+?E-A5PZ>Y$22,B)R4$J2EX;!@'?1*<LM
M]V6W0KE=O[$GK!RJW'EK27=@?#9-W,JU>Z:62I!A)C:XJ%4XPH (N7BCO=*Z
M25AVS'"[DY;0'7-G#2'T/K&S/F:<!6Z<9^"#(@DQ5D>UB0Q:>'21#D(,IT)/
M#U?7(/K>>:S=/L+O#T5K,YIBM<48(!<MB8DH@80BP# 9(L_1<=VD.N6LQMKM
MI>F=QMKM(_8.L+,I#>:=\-*2.*(ON6XU2Q 8\Q"4SD8'6[AM,FOLF +P$Q7(
M#1UQ'2;T[K#SH K9VX1\-8_8"8HJ4%D@[]!#SBHG4Q^A3U&UVWL!^%[:WK4
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
M_'J!7T\7I,J_,RX_SS[ --5/O7VHNIV$E$OPP9$FG6#:(\49KCB6I-*.UHE
MA%WVG]U%:NKJ:?@MZHULU19#GX.U7HGKRQ3MA76Z2.8!H(Z-X^1<FLQB5!A#
M="7"+GSL+4 O]H5C9=\X=FB+:Y_J8X*?9UW\L@7FQYN:.*@1<144+A<3BZ4.
M_H\,C*IA,;D)P5M@SEGDID2C-=^!<J^5H]^5*3]6ZHUJED,SL)NF K<U3_'@
M49Q.<9YAD=_?Y#5NPG56'C"O7L*<>-)N1$-13= $-/O"@&,F@@45H8 VF]=B
M3_!O'RGZL>\X;NS?UB0-7'%4=9V5C8;XU7;^RVP^GWVK[?)P3?]9WDX$[=W2
M),Z<\H0M!,\BSYI%X-Y[5^LT1DD5O4;(?FP\KIO^T8QTZ,UO&[ ?$-W/%^HN
M$N_B<EZ74B1<N72UB8'V^#IBR*0BC;(8<?-YTB>VOMUEZ$>UX\@!O*4YCHMU
M?\#ES=TY,/':9RT$4N"4D.D:0GE%@$,0!8H-!DR_27*[R]"/=<>1,7A+<S1P
MV*[ZP&I=VEGI*J.[9\X7Z_:PG,1$2@D8:\0$=7Y>K#YL$H)YK:3QT9ODU!@G
M[(N2]6/=<:4/AC5',_SJ^@R_[]98 :NW1CE]N9Y-'Y!/@!:0#011UL<V-&"M
M$3"E.@[)F(R 8I2IX#O(VH^#QY&">"N3-<#*#LX*R/N;.>WIJXO,%<"/^5OW
M+PK:(8"MMY,&ZV0O3)*"=IU9=,I%!SQS.\[#.[W$Z\>]X\AIC&B8\=_D6?^C
M_H@4CO_\T_]02P$"% ,4    " #F1*U2Y7M_CF$'  ![)@  &P
M    @ $     83(P,C$P,S,Q97AH:6)I=#,Q,3$P+7$N:'1M4$L! A0#%
M  @ YD2M4@33MS9/!P  [B4  !L              ( !F@<  &$R,#(Q,#,S
M,65X:&EB:70S,3(Q,"UQ+FAT;5!+ 0(4 Q0    ( .9$K5)#/*:WF 4  %P<
M   ;              "  2(/  !A,C R,3 S,S%E>&AI8FET,S(Q,3 M<2YH
M=&U02P$"% ,4    " #F1*U2.$O;\,SQ 0"#+10 $0              @ 'S
M%   969O:2TR,#(Q,#,S,2YH=&U02P$"% ,4    " #F1*U2:U+[[503  "W
MW   $0              @ 'N!@( 969O:2TR,#(Q,#,S,2YX<V102P$"% ,4
M    " #F1*U24K[]OZ\D  #"CP$ %0              @ %Q&@( 969O:2TR
M,#(Q,#,S,5]C86PN>&UL4$L! A0#%     @ YD2M4B_FTRC8<   D<L$ !4
M             ( !4S\" &5F;VDM,C R,3 S,S%?9&5F+GAM;%!+ 0(4 Q0
M   ( .=$K5+KNQ"R#?T  $>K"@ 5              "  5ZP @!E9F]I+3(P
M,C$P,S,Q7VQA8BYX;6Q02P$"% ,4    " #G1*U2O95<>1RE  "YGP< %0
M            @ &>K0, 969O:2TR,#(Q,#,S,5]P<F4N>&UL4$L%!@     )
-  D 90(  .U2!     $!

end
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
